let it1, it2 be Element of NAT ; ( ex k being Element of NAT st
( it1 = k & ((StepWhile=0 a,I,s) . k) . a <> 0 & ( for i being Element of NAT st ((StepWhile=0 a,I,s) . i) . a <> 0 holds
k <= i ) & DataPart (Comput (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))),(LifeSpan (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))))) = DataPart ((StepWhile=0 a,I,s) . k) ) & ex k being Element of NAT st
( it2 = k & ((StepWhile=0 a,I,s) . k) . a <> 0 & ( for i being Element of NAT st ((StepWhile=0 a,I,s) . i) . a <> 0 holds
k <= i ) & DataPart (Comput (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))),(LifeSpan (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))))) = DataPart ((StepWhile=0 a,I,s) . k) ) implies it1 = it2 )
given k1 being Element of NAT such that A30:
it1 = k1
and
A31:
( ((StepWhile=0 a,I,s) . k1) . a <> 0 & ( for i being Element of NAT st ((StepWhile=0 a,I,s) . i) . a <> 0 holds
k1 <= i ) )
and
DataPart (Comput (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))),(LifeSpan (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))))) = DataPart ((StepWhile=0 a,I,s) . k1)
; ( for k being Element of NAT holds
( not it2 = k or not ((StepWhile=0 a,I,s) . k) . a <> 0 or ex i being Element of NAT st
( ((StepWhile=0 a,I,s) . i) . a <> 0 & not k <= i ) or not DataPart (Comput (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))),(LifeSpan (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))))) = DataPart ((StepWhile=0 a,I,s) . k) ) or it1 = it2 )
given k2 being Element of NAT such that A32:
it2 = k2
and
A33:
( ((StepWhile=0 a,I,s) . k2) . a <> 0 & ( for i being Element of NAT st ((StepWhile=0 a,I,s) . i) . a <> 0 holds
k2 <= i ) )
and
DataPart (Comput (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))),(LifeSpan (ProgramPart (s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA )))),(s +* ((while=0 a,I) +* (Start-At 0 ,SCM+FSA ))))) = DataPart ((StepWhile=0 a,I,s) . k2)
; it1 = it2
( k1 <= k2 & k2 <= k1 )
by A31, A33;
hence
it1 = it2
by A30, A32, XXREAL_0:1; verum