let S1, S2 be non empty non void Circuit-like ManySortedSign ; :: thesis: ( InputVertices S1 misses InnerVertices S2 implies for S being non empty non void Circuit-like ManySortedSign st S = S1 +* S2 holds
for A1 being non-empty Circuit of S1
for A2 being non-empty Circuit of S2 st A1 tolerates A2 holds
for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2) )

assume A1: InputVertices S1 misses InnerVertices S2 ; :: thesis: for S being non empty non void Circuit-like ManySortedSign st S = S1 +* S2 holds
for A1 being non-empty Circuit of S1
for A2 being non-empty Circuit of S2 st A1 tolerates A2 holds
for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

let S be non empty non void Circuit-like ManySortedSign ; :: thesis: ( S = S1 +* S2 implies for A1 being non-empty Circuit of S1
for A2 being non-empty Circuit of S2 st A1 tolerates A2 holds
for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2) )

assume A2: S = S1 +* S2 ; :: thesis: for A1 being non-empty Circuit of S1
for A2 being non-empty Circuit of S2 st A1 tolerates A2 holds
for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

let A1 be non-empty Circuit of S1; :: thesis: for A2 being non-empty Circuit of S2 st A1 tolerates A2 holds
for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

let A2 be non-empty Circuit of S2; :: thesis: ( A1 tolerates A2 implies for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2) )

assume A3: A1 tolerates A2 ; :: thesis: for A being non-empty Circuit of S st A = A1 +* A2 holds
for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

let A be non-empty Circuit of S; :: thesis: ( A = A1 +* A2 implies for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2) )

assume A4: A = A1 +* A2 ; :: thesis: for s being State of A
for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

let s be State of A; :: thesis: for s1 being State of A1 st s1 = s | the carrier of S1 & s1 is stabilizing holds
for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

let s1 be State of A1; :: thesis: ( s1 = s | the carrier of S1 & s1 is stabilizing implies for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2) )

assume that
A5: s1 = s | the carrier of S1 and
A6: s1 is stabilizing ; :: thesis: for s2 being State of A2 st s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing holds
stabilization-time s = (stabilization-time s1) + (stabilization-time s2)

set st1 = stabilization-time s1;
let s2 be State of A2; :: thesis: ( s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 & s2 is stabilizing implies stabilization-time s = (stabilization-time s1) + (stabilization-time s2) )
assume that
A7: s2 = (Following (s,(stabilization-time s1))) | the carrier of S2 and
A8: s2 is stabilizing ; :: thesis: stabilization-time s = (stabilization-time s1) + (stabilization-time s2)
set st2 = stabilization-time s2;
A9: Following (s1,(stabilization-time s1)) is stable by A6, Def5;
A10: now :: thesis: for n being Element of NAT st n < (stabilization-time s1) + (stabilization-time s2) holds
not Following (s,n) is stable
let n be Element of NAT ; :: thesis: ( n < (stabilization-time s1) + (stabilization-time s2) implies not Following (s,b1) is stable )
assume A11: n < (stabilization-time s1) + (stabilization-time s2) ; :: thesis: not Following (s,b1) is stable
per cases ( stabilization-time s1 <= n or n < stabilization-time s1 ) ;
suppose stabilization-time s1 <= n ; :: thesis: not Following (s,b1) is stable
then consider m being Nat such that
A12: n = (stabilization-time s1) + m by NAT_1:10;
reconsider m = m as Element of NAT by ORDINAL1:def 12;
m < stabilization-time s2 by A11, A12, XREAL_1:6;
then A13: not Following (s2,m) is stable by A8, Def5;
Following (s1,(stabilization-time s1)) = (Following (s,(stabilization-time s1))) | the carrier of S1 by A1, A2, A3, A4, A5, CIRCCMB2:13;
then Following (s2,m) = (Following ((Following (s,(stabilization-time s1))),m)) | the carrier of S2 by A1, A2, A3, A4, A7, A9, CIRCCMB2:18
.= (Following (s,n)) | the carrier of S2 by A12, FACIRC_1:13 ;
hence not Following (s,n) is stable by A2, A3, A4, A13, CIRCCMB2:17; :: thesis: verum
end;
end;
end;
Following (s2,(stabilization-time s2)) is stable by A8, Def5;
then A15: Following (s,((stabilization-time s1) + (stabilization-time s2))) is stable by A1, A2, A3, A4, A5, A7, A9, CIRCCMB2:19;
s is stabilizing by A1, A2, A3, A4, A5, A6, A7, A8, Th9;
hence stabilization-time s = (stabilization-time s1) + (stabilization-time s2) by A15, A10, Def5; :: thesis: verum