set p = Initialized Insert-Sort-Algorithm ;
F1: (ProgramPart (Initialized Insert-Sort-Algorithm )) +* (Initialized Insert-Sort-Algorithm ) = Initialized Insert-Sort-Algorithm by FUNCT_4:119;
let x be set ; :: according to AMI_1:def 30 :: thesis: ( not x in proj1 Sorting-Function or ex b1 being set st
( x = b1 & ((ProgramPart (Initialized Insert-Sort-Algorithm )) +* (Initialized Insert-Sort-Algorithm )) +* b1 is set & Sorting-Function . b1 c= Result (ProgramPart (Initialized Insert-Sort-Algorithm )),((Initialized Insert-Sort-Algorithm ) +* b1) ) )

assume x in dom Sorting-Function ; :: thesis: ex b1 being set st
( x = b1 & ((ProgramPart (Initialized Insert-Sort-Algorithm )) +* (Initialized Insert-Sort-Algorithm )) +* b1 is set & Sorting-Function . b1 c= Result (ProgramPart (Initialized Insert-Sort-Algorithm )),((Initialized Insert-Sort-Algorithm ) +* b1) )

then consider w being FinSequence of INT such that
A1: x = (fsloc 0 ) .--> w by SCMBSORT:60;
reconsider d = x as FinPartState of SCM+FSA by A1;
consider t being State of SCM+FSA such that
A2: (Initialized Insert-Sort-Algorithm ) +* d c= t by PBOOLE:156;
A3: dom (Initialized Insert-Sort-Algorithm ) misses dom d by A1, SCMBSORT:46;
A4: now end;
then A6: (Initialized Insert-Sort-Algorithm ) +* d is halting by AMI_1:def 26;
take d ; :: thesis: ( x = d & ((ProgramPart (Initialized Insert-Sort-Algorithm )) +* (Initialized Insert-Sort-Algorithm )) +* d is set & Sorting-Function . d c= Result (ProgramPart (Initialized Insert-Sort-Algorithm )),((Initialized Insert-Sort-Algorithm ) +* d) )
thus x = d ; :: thesis: ( ((ProgramPart (Initialized Insert-Sort-Algorithm )) +* (Initialized Insert-Sort-Algorithm )) +* d is set & Sorting-Function . d c= Result (ProgramPart (Initialized Insert-Sort-Algorithm )),((Initialized Insert-Sort-Algorithm ) +* d) )
d c= (Initialized Insert-Sort-Algorithm ) +* d by FUNCT_4:26;
then A7: dom d c= dom ((Initialized Insert-Sort-Algorithm ) +* d) by RELAT_1:25;
thus ((ProgramPart (Initialized Insert-Sort-Algorithm )) +* (Initialized Insert-Sort-Algorithm )) +* d is pre-program of SCM+FSA by A1, A4, Th48, F1, AMI_1:def 26; :: thesis: Sorting-Function . d c= Result (ProgramPart (Initialized Insert-Sort-Algorithm )),((Initialized Insert-Sort-Algorithm ) +* d)
fsloc 0 in the carrier of SCM+FSA ;
then A8: fsloc 0 in dom (Result (ProgramPart t),t) by PARTFUN1:def 4;
(Initialized Insert-Sort-Algorithm ) +* d is autonomic by A1, Th48;
then A9: Result (ProgramPart ((Initialized Insert-Sort-Algorithm ) +* d)),((Initialized Insert-Sort-Algorithm ) +* d) = (Result (ProgramPart t),t) | (dom ((Initialized Insert-Sort-Algorithm ) +* d)) by A6, A2, AMI_1:def 29;
A10: dom d = {(fsloc 0 )} by A1, FUNCOP_1:19;
consider u being FinSequence of REAL such that
A11: w,u are_fiberwise_equipotent and
A12: u is non-increasing and
u is FinSequence of INT and
A13: (Result (ProgramPart t),t) . (fsloc 0 ) = u by A1, A2, Th47;
consider z being FinSequence of REAL such that
A14: w,z are_fiberwise_equipotent and
A15: z is non-increasing and
z is FinSequence of INT and
A16: Sorting-Function . d = (fsloc 0 ) .--> z by A1, SCMBSORT:61;
A17: dom ((fsloc 0 ) .--> z) = {(fsloc 0 )} by FUNCOP_1:19;
set f = Result (ProgramPart ((Initialized Insert-Sort-Algorithm ) +* d)),((Initialized Insert-Sort-Algorithm ) +* d);
u: u = z by A14, A15, A11, A12, CLASSES1:84, RFINSEQ:36;
x1: dom ((fsloc 0 ) .--> z) c= dom ((Initialized Insert-Sort-Algorithm ) +* d) by A10, A7, A17;
fsloc 0 <> IC SCM+FSA by SCMFSA_2:82;
then K: dom d misses {(IC SCM+FSA )} by A10, ZFMISC_1:17;
now
assume dom d meets NAT ; :: thesis: contradiction
then consider x being set such that
W1: x in dom d and
W2: x in NAT by XBOOLE_0:3;
A: x is Element of NAT by W2;
x = fsloc 0 by W1, A10, TARSKI:def 1;
hence contradiction by A, SCMFSA_2:85; :: thesis: verum
end;
then dom d misses {(IC SCM+FSA )} \/ NAT by K, XBOOLE_1:70;
then d is data-only by COMPOS_1:def 23;
then dom d misses NAT by COMPOS_1:40;
then x2: ProgramPart ((Initialized Insert-Sort-Algorithm ) +* d) = ProgramPart (Initialized Insert-Sort-Algorithm ) by FUNCT_4:76;
(fsloc 0 ) .--> z c= Result (ProgramPart t),t by A13, A8, u, FUNCT_4:90;
then (fsloc 0 ) .--> z c= Result (ProgramPart ((Initialized Insert-Sort-Algorithm ) +* d)),((Initialized Insert-Sort-Algorithm ) +* d) by x1, A9, RELAT_1:186;
hence Sorting-Function . d c= Result (ProgramPart (Initialized Insert-Sort-Algorithm )),((Initialized Insert-Sort-Algorithm ) +* d) by A16, x2; :: thesis: verum