Proof: Get Iterate Parent 10

Let's prove the following theorem:

if the following are true:
  • expression state at time 10 = "iterate_args"
  • arguments stack at time 10 = [ [ "John", [ "Smith", [ 25, [ ] ] ] ], [ ] ]
  • parent stack at time 10 = [ Person("John", "Smith", 25), [ ] ]

then parent stack at time 11 = [ Person("John", "Smith", 25), [ ] ]

Proof:

View as a tree | View dependent proofs | Try proving it

Given
1 expression state at time 10 = "iterate_args"
2 arguments stack at time 10 = [ [ "John", [ "Smith", [ 25, [ ] ] ] ], [ ] ]
3 parent stack at time 10 = [ Person("John", "Smith", 25), [ ] ]
Proof Table
# Claim Reason
1 parent stack at time (10 + 1) = parent stack at time 10 if expression state at time 10 = "iterate_args" and arguments stack at time 10 = [ [ "John", [ "Smith", [ 25, [ ] ] ] ], [ ] ], then parent stack at time (10 + 1) = parent stack at time 10
2 parent stack at time (10 + 1) = [ Person("John", "Smith", 25), [ ] ] if parent stack at time (10 + 1) = parent stack at time 10 and parent stack at time 10 = [ Person("John", "Smith", 25), [ ] ], then parent stack at time (10 + 1) = [ Person("John", "Smith", 25), [ ] ]
3 10 + 1 = 11 10 + 1 = 11
4 parent stack at time (10 + 1) = parent stack at time 11 if 10 + 1 = 11, then parent stack at time (10 + 1) = parent stack at time 11
5 parent stack at time 11 = [ Person("John", "Smith", 25), [ ] ] if parent stack at time (10 + 1) = parent stack at time 11 and parent stack at time (10 + 1) = [ Person("John", "Smith", 25), [ ] ], then parent stack at time 11 = [ Person("John", "Smith", 25), [ ] ]

Comments

Please log in to add comments