set S = CatSign A;
defpred S1[ set , set ] means ( ( A = 0 implies c2 = 2 ) & ( A = 1 implies c2 = 1 ) & ( A = 2 implies c2 = 3 ) );
A1: for x being set st x in NAT holds
ex y being set st
( y in NAT & S1[x,y] )
proof
let i be set ; :: thesis: ( i in NAT implies ex y being set st
( y in NAT & S1[i,y] ) )

assume i in NAT ; :: thesis: ex y being set st
( y in NAT & S1[i,y] )

reconsider j0 = 2, j1 = 1, j2 = 3 as set ;
per cases ( i = 0 or i = 1 or i = 2 or ( i <> 0 & i <> 1 & i <> 2 ) ) ;
suppose A2: i = 0 ; :: thesis: ex y being set st
( y in NAT & S1[i,y] )

take j = j0; :: thesis: ( j in NAT & S1[i,j] )
thus ( j in NAT & S1[i,j] ) by A2; :: thesis: verum
end;
suppose A3: i = 1 ; :: thesis: ex y being set st
( y in NAT & S1[i,y] )

take j = j1; :: thesis: ( j in NAT & S1[i,j] )
thus ( j in NAT & S1[i,j] ) by A3; :: thesis: verum
end;
suppose A4: i = 2 ; :: thesis: ex y being set st
( y in NAT & S1[i,y] )

take j = j2; :: thesis: ( j in NAT & S1[i,j] )
thus ( j in NAT & S1[i,j] ) by A4; :: thesis: verum
end;
suppose A5: ( i <> 0 & i <> 1 & i <> 2 ) ; :: thesis: ex y being set st
( y in NAT & S1[i,y] )

take j = j0; :: thesis: ( j in NAT & S1[i,j] )
thus ( j in NAT & S1[i,j] ) by A5; :: thesis: verum
end;
end;
end;
consider f being Function such that
A6: ( dom f = NAT & rng f c= NAT ) and
A7: for i being set st i in NAT holds
S1[i,f . i] from WELLORD2:sch 1(A1);
reconsider f = f as Function of NAT ,NAT by A6, FUNCT_2:4;
A8: the carrier of (CatSign A) = [:{0 },(2 -tuples_on A):] by Def5;
A9: the carrier' of (CatSign A) = [:{1},(1 -tuples_on A):] \/ [:{2},(3 -tuples_on A):] by Def5;
A10: A = underlay (CatSign A) by Th15;
take f ; :: according to CATALG_1:def 9 :: thesis: ( ( for s being set st s in the carrier of (CatSign A) holds
ex i being Element of NAT ex p being FinSequence st
( s = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A) ) ) & ( for o being set st o in the carrier' of (CatSign A) holds
ex i being Element of NAT ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) ) ) )

hereby :: thesis: for o being set st o in the carrier' of (CatSign A) holds
ex i being Element of NAT ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )
let s be set ; :: thesis: ( s in the carrier of (CatSign A) implies ex i being Element of NAT ex p being FinSequence st
( s = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A) ) )

assume s in the carrier of (CatSign A) ; :: thesis: ex i being Element of NAT ex p being FinSequence st
( s = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A) )

then consider i, p being set such that
A11: ( i in {0 } & p in 2 -tuples_on A & s = [i,p] ) by A8, ZFMISC_1:103;
reconsider p = p as FinSequence by A11, FINSEQ_2:def 3;
take i = 0 ; :: thesis: ex p being FinSequence st
( s = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A) )

take p = p; :: thesis: ( s = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A) )
f . i = 2 by A7;
hence ( s = [i,p] & len p = f . i ) by A11, Th4, TARSKI:def 1; :: thesis: [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A)
thus [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier of (CatSign A) by A7, A8, A10; :: thesis: verum
end;
let o be set ; :: thesis: ( o in the carrier' of (CatSign A) implies ex i being Element of NAT ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) ) )

assume A12: o in the carrier' of (CatSign A) ; :: thesis: ex i being Element of NAT ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )

per cases ( o in [:{1},(1 -tuples_on A):] or o in [:{2},(3 -tuples_on A):] ) by A9, A12, XBOOLE_0:def 3;
suppose o in [:{1},(1 -tuples_on A):] ; :: thesis: ex i being Element of NAT ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )

then consider i, p being set such that
A13: ( i in {1} & p in 1 -tuples_on A & o = [i,p] ) by ZFMISC_1:103;
reconsider p = p as FinSequence of A by A13, FINSEQ_2:def 3;
take i = 1; :: thesis: ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )

take p ; :: thesis: ( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )
f . i = 1 by A7;
hence ( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) ) by A9, A10, A13, Th4, TARSKI:def 1, XBOOLE_1:7; :: thesis: verum
end;
suppose o in [:{2},(3 -tuples_on A):] ; :: thesis: ex i being Element of NAT ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )

then consider i, p being set such that
A14: ( i in {2} & p in 3 -tuples_on A & o = [i,p] ) by ZFMISC_1:103;
reconsider p = p as FinSequence of A by A14, FINSEQ_2:def 3;
take i = 2; :: thesis: ex p being FinSequence st
( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )

take p ; :: thesis: ( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) )
f . i = 3 by A7;
hence ( o = [i,p] & len p = f . i & [:{i},((f . i) -tuples_on (underlay (CatSign A))):] c= the carrier' of (CatSign A) ) by A9, A10, A14, Th4, TARSKI:def 1, XBOOLE_1:7; :: thesis: verum
end;
end;