let s be State of ; :: thesis: for I, J being Program of
for a being read-write Int-Location st s . a = 0 & J is_closed_on Initialize s & J is_halting_on Initialize s holds
IExec (if<0 a,I,J),s = (IExec J,s) +* (Start-At (insloc ((((card I) + (card J)) + (card J)) + 7)))

let I, J be Program of ; :: thesis: for a being read-write Int-Location st s . a = 0 & J is_closed_on Initialize s & J is_halting_on Initialize s holds
IExec (if<0 a,I,J),s = (IExec J,s) +* (Start-At (insloc ((((card I) + (card J)) + (card J)) + 7)))

let a be read-write Int-Location ; :: thesis: ( s . a = 0 & J is_closed_on Initialize s & J is_halting_on Initialize s implies IExec (if<0 a,I,J),s = (IExec J,s) +* (Start-At (insloc ((((card I) + (card J)) + (card J)) + 7))) )
assume A1: s . a = 0 ; :: thesis: ( not J is_closed_on Initialize s or not J is_halting_on Initialize s or IExec (if<0 a,I,J),s = (IExec J,s) +* (Start-At (insloc ((((card I) + (card J)) + (card J)) + 7))) )
assume that
A2: J is_closed_on Initialize s and
A3: J is_halting_on Initialize s ; :: thesis: IExec (if<0 a,I,J),s = (IExec J,s) +* (Start-At (insloc ((((card I) + (card J)) + (card J)) + 7)))
thus IExec (if<0 a,I,J),s = (IExec J,s) +* (Start-At (insloc (((card (if>0 a,J,I)) + (card J)) + 3))) by A1, A2, A3, Th17
.= (IExec J,s) +* (Start-At (insloc (((((card I) + (card J)) + 4) + (card J)) + 3))) by Th15
.= (IExec J,s) +* (Start-At (insloc ((((card I) + (card J)) + (card J)) + 7))) ; :: thesis: verum