Proof: Do Reverse 20 0
Let's prove the following theorem:
reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = [ "John", [ "Smith", [ 25, [ ] ] ] ]
Proof:
# | Claim | Reason |
---|---|---|
1 | reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ 25, [ "Smith", [ "John", [ ] ] ] ] and already reversed stack [ ] | reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ 25, [ "Smith", [ "John", [ ] ] ] ] and already reversed stack [ ] |
2 | reverse of remaining stack [ 25, [ "Smith", [ "John", [ ] ] ] ] and already reversed stack [ ] = reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] | reverse of remaining stack [ 25, [ "Smith", [ "John", [ ] ] ] ] and already reversed stack [ ] = reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] |
3 | reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] = reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] | reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] = reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] |
4 | reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] = [ "John", [ "Smith", [ 25, [ ] ] ] ] | reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] = [ "John", [ "Smith", [ 25, [ ] ] ] ] |
5 | reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] | if reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ 25, [ "Smith", [ "John", [ ] ] ] ] and already reversed stack [ ] and reverse of remaining stack [ 25, [ "Smith", [ "John", [ ] ] ] ] and already reversed stack [ ] = reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ], then reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] |
6 | reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] | if reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] and reverse of remaining stack [ "Smith", [ "John", [ ] ] ] and already reversed stack [ 25, [ ] ] = reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ], then reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] |
7 | reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = [ "John", [ "Smith", [ 25, [ ] ] ] ] | if reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] and reverse of remaining stack [ "John", [ ] ] and already reversed stack [ "Smith", [ 25, [ ] ] ] = [ "John", [ "Smith", [ 25, [ ] ] ] ], then reverse of [ 25, [ "Smith", [ "John", [ ] ] ] ] = [ "John", [ "Smith", [ 25, [ ] ] ] ] |
Comments
Please log in to add comments