let IIG be non empty non void Circuit-like monotonic ManySortedSign ; :: thesis: for A being non-empty finite-yielding MSAlgebra over IIG
for v being Element of IIG holds
( size (v,A) = 1 iff v in (InputVertices IIG) \/ (SortsWithConstants IIG) )

let A be non-empty finite-yielding MSAlgebra over IIG; :: thesis: for v being Element of IIG holds
( size (v,A) = 1 iff v in (InputVertices IIG) \/ (SortsWithConstants IIG) )

let v be Element of IIG; :: thesis: ( size (v,A) = 1 iff v in (InputVertices IIG) \/ (SortsWithConstants IIG) )
consider s being non empty finite Subset of NAT such that
A1: s = { (card t) where t is Element of the Sorts of (FreeEnv A) . v : verum } and
A2: size (v,A) = max s by Def4;
reconsider Y = s as non empty finite real-membered set ;
max Y in { (card t) where t is Element of the Sorts of (FreeEnv A) . v : verum } by A1, XXREAL_2:def 8;
then consider e being Element of the Sorts of (FreeEnv A) . v such that
A3: card e = max Y ;
A4: FreeEnv A = MSAlgebra(# (FreeSort the Sorts of A),(FreeOper the Sorts of A) #) by MSAFREE:def 14;
then ( e in the Sorts of (FreeEnv A) . v & the Sorts of (FreeEnv A) . v = FreeSort ( the Sorts of A,v) ) by MSAFREE:def 11;
then A5: e in { a where a is Element of TS (DTConMSA the Sorts of A) : ( ex x being set st
( x in the Sorts of A . v & a = root-tree [x,v] ) or ex o being OperSymbol of IIG st
( [o, the carrier of IIG] = a . {} & the_result_sort_of o = v ) )
}
by MSAFREE:def 10;
thus ( size (v,A) = 1 implies v in (InputVertices IIG) \/ (SortsWithConstants IIG) ) :: thesis: ( v in (InputVertices IIG) \/ (SortsWithConstants IIG) implies size (v,A) = 1 )
proof
assume A6: size (v,A) = 1 ; :: thesis: v in (InputVertices IIG) \/ (SortsWithConstants IIG)
now :: thesis: v in (InputVertices IIG) \/ (SortsWithConstants IIG)
assume A7: not v in (InputVertices IIG) \/ (SortsWithConstants IIG) ; :: thesis: contradiction
then not v in SortsWithConstants IIG by XBOOLE_0:def 3;
then not v in { v9 where v9 is SortSymbol of IIG : v9 is with_const_op } by MSAFREE2:def 1;
then A8: not v is with_const_op ;
A9: the carrier of IIG = (InputVertices IIG) \/ (InnerVertices IIG) by XBOOLE_1:45;
not v in InputVertices IIG by A7, XBOOLE_0:def 3;
then v in InnerVertices IIG by A9, XBOOLE_0:def 3;
then consider x being object such that
A10: x in dom the ResultSort of IIG and
A11: v = the ResultSort of IIG . x by FUNCT_1:def 3;
reconsider o = x as OperSymbol of IIG by A10;
per cases ( not the Arity of IIG . o = {} or not the ResultSort of IIG . o = v ) by A8, MSUALG_2:def 1;
suppose not the Arity of IIG . o = {} ; :: thesis: contradiction
then A12: the_arity_of o <> {} by MSUALG_1:def 1;
reconsider O = [: the carrier' of IIG,{ the carrier of IIG}:] \/ (Union (coprod the Sorts of A)) as non empty set ;
reconsider R = REL the Sorts of A as Relation of O,(O *) ;
the carrier of IIG in { the carrier of IIG} by TARSKI:def 1;
then A13: [o, the carrier of IIG] in [: the carrier' of IIG,{ the carrier of IIG}:] by ZFMISC_1:87;
DTConMSA the Sorts of A = DTConstrStr(# O,R #) by MSAFREE:def 8;
then reconsider o9 = [o, the carrier of IIG] as Symbol of (DTConMSA the Sorts of A) by A13, XBOOLE_0:def 3;
o9 in NonTerminals (DTConMSA the Sorts of A) by A13, MSAFREE:6;
then consider p being FinSequence of TS (DTConMSA the Sorts of A) such that
A14: o9 ==> roots p by DTCONSTR:def 5;
reconsider op = o9 -tree p as Element of TS (DTConMSA the Sorts of A) by A14, DTCONSTR:def 1;
reconsider e1 = op as finite DecoratedTree ;
reconsider co = card e1 as Real ;
A15: op . {} = o9 by TREES_4:def 4;
now :: thesis: ex o, o being OperSymbol of IIG st
( [o, the carrier of IIG] = op . {} & the_result_sort_of o = v )
take o = o; :: thesis: ex o being OperSymbol of IIG st
( [o, the carrier of IIG] = op . {} & the_result_sort_of o = v )

the_result_sort_of o = v by A11, MSUALG_1:def 2;
hence ex o being OperSymbol of IIG st
( [o, the carrier of IIG] = op . {} & the_result_sort_of o = v ) by A15; :: thesis: verum
end;
then op in { a9 where a9 is Element of TS (DTConMSA the Sorts of A) : ( ex x9 being set st
( x9 in the Sorts of A . v & a9 = root-tree [x9,v] ) or ex o being OperSymbol of IIG st
( [o, the carrier of IIG] = a9 . {} & the_result_sort_of o = v ) )
}
;
then A16: op in FreeSort ( the Sorts of A,v) by MSAFREE:def 10;
A17: the Sorts of (FreeEnv A) . (the_result_sort_of o) = (FreeSort the Sorts of A) . v by A4, A11, MSUALG_1:def 2
.= FreeSort ( the Sorts of A,v) by MSAFREE:def 11 ;
then reconsider e1 = e1 as Element of the Sorts of (FreeEnv A) . v by A11, A16, MSUALG_1:def 2;
len p = len (the_arity_of o) by A16, A17, MSAFREE2:10;
then p <> {} by A12;
then rng p <> {} ;
then A18: 1 in dom p by FINSEQ_3:32;
( ex q being DTree-yielding FinSequence st
( p = q & dom op = tree (doms q) ) & 0 + 1 = 1 ) by TREES_4:def 4;
then A19: <*0*> in dom op by A18, PRE_CIRC:13;
then consider i being Nat, T being DecoratedTree, q being Node of T such that
A20: ( i < len p & T = p . (i + 1) & <*0*> = <*i*> ^ q ) by TREES_4:11;
op . <*0*> = T . q by A20, TREES_4:12;
then A21: [<*0*>,(T . q)] in op by A19, FUNCT_1:1;
{} in dom op by TREES_1:22;
then [{},o9] in op by A15, FUNCT_1:1;
then A22: {[{},o9],[<*0*>,(T . q)]} c= op by A21, ZFMISC_1:32;
e1 in the Sorts of (FreeEnv A) . v ;
then A23: co in Y by A1;
[{},o9] <> [<*0*>,(T . q)] by XTUPLE_0:1;
then card {[{},o9],[<*0*>,(T . q)]} = 2 by CARD_2:57;
then 2 <= co by A22, NAT_1:43;
then co > size (v,A) by A6, XXREAL_0:2;
hence contradiction by A2, A23, XXREAL_2:def 8; :: thesis: verum
end;
end;
end;
hence v in (InputVertices IIG) \/ (SortsWithConstants IIG) ; :: thesis: verum
end;
consider a being Element of TS (DTConMSA the Sorts of A) such that
A24: a = e and
A25: ( ex x being set st
( x in the Sorts of A . v & a = root-tree [x,v] ) or ex o being OperSymbol of IIG st
( [o, the carrier of IIG] = a . {} & the_result_sort_of o = v ) ) by A5;
assume A26: v in (InputVertices IIG) \/ (SortsWithConstants IIG) ; :: thesis: size (v,A) = 1
per cases ( v in InputVertices IIG or v in SortsWithConstants IIG ) by A26, XBOOLE_0:def 3;
suppose v in InputVertices IIG ; :: thesis: size (v,A) = 1
then consider x being set such that
x in the Sorts of A . v and
A27: a = root-tree [x,v] by A25, MSAFREE2:2;
root-tree [x,v] = {{}} --> [x,v] by TREES_1:29, TREES_4:def 2
.= [:{{}},{[x,v]}:] by FUNCOP_1:def 2
.= {[{},[x,v]]} by ZFMISC_1:29 ;
hence size (v,A) = 1 by A2, A3, A24, A27, CARD_1:30; :: thesis: verum
end;
suppose v in SortsWithConstants IIG ; :: thesis: size (v,A) = 1
then v in { v9 where v9 is SortSymbol of IIG : v9 is with_const_op } by MSAFREE2:def 1;
then consider v9 being SortSymbol of IIG such that
A28: v9 = v and
A29: v9 is with_const_op ;
consider o being OperSymbol of IIG such that
A30: the Arity of IIG . o = {} and
A31: the ResultSort of IIG . o = v9 by A29, MSUALG_2:def 1;
now :: thesis: size (v,A) = 1
per cases ( ex x being set st
( x in the Sorts of A . v & a = root-tree [x,v] ) or ex o9 being OperSymbol of IIG st
( [o9, the carrier of IIG] = a . {} & the_result_sort_of o9 = v ) )
by A25;
suppose ex x being set st
( x in the Sorts of A . v & a = root-tree [x,v] ) ; :: thesis: size (v,A) = 1
then consider x being set such that
x in the Sorts of A . v and
A32: a = root-tree [x,v] ;
root-tree [x,v] = {[{},[x,v]]} by TREES_4:6;
hence size (v,A) = 1 by A2, A3, A24, A32, CARD_1:30; :: thesis: verum
end;
suppose ex o9 being OperSymbol of IIG st
( [o9, the carrier of IIG] = a . {} & the_result_sort_of o9 = v ) ; :: thesis: size (v,A) = 1
then consider o9 being OperSymbol of IIG such that
A33: [o9, the carrier of IIG] = a . {} and
A34: the_result_sort_of o9 = v ;
the_result_sort_of o9 = the_result_sort_of o by A28, A31, A34, MSUALG_1:def 2;
then A35: o9 = o by MSAFREE2:def 6;
( NonTerminals (DTConMSA the Sorts of A) = [: the carrier' of IIG,{ the carrier of IIG}:] & the carrier of IIG in { the carrier of IIG} ) by MSAFREE:6, TARSKI:def 1;
then reconsider nt = [o9, the carrier of IIG] as NonTerminal of (DTConMSA the Sorts of A) by ZFMISC_1:87;
consider ts being FinSequence of TS (DTConMSA the Sorts of A) such that
A36: a = nt -tree ts and
nt ==> roots ts by A33, DTCONSTR:10;
reconsider ts = ts as DTree-yielding FinSequence ;
len ts = len (the_arity_of o9) by A24, A34, A36, MSAFREE2:10
.= len {} by A30, A35, MSUALG_1:def 1
.= 0 ;
then ts = {} ;
then a = root-tree nt by A36, TREES_4:20
.= {[{},nt]} by TREES_4:6 ;
hence size (v,A) = 1 by A2, A3, A24, CARD_1:30; :: thesis: verum
end;
end;
end;
hence size (v,A) = 1 ; :: thesis: verum
end;
end;