let I be non empty set ; :: thesis: for A being ManySortedSet of holds
( 2 c= card (product A) iff ( A is non-empty & not A is trivial-yielding ) )
let A be ManySortedSet of ; :: thesis: ( 2 c= card (product A) iff ( A is non-empty & not A is trivial-yielding ) )
A1:
dom A = I
by PARTFUN1:def 4;
thus
( 2 c= card (product A) implies ( A is non-empty & not A is trivial-yielding ) )
:: thesis: ( A is non-empty & not A is trivial-yielding implies 2 c= card (product A) )
assume A6:
( A is non-empty & not A is trivial-yielding )
; :: thesis: 2 c= card (product A)
then
not product A is empty
by CARD_3:37;
then consider a1 being set such that
A8:
a1 in product A
by XBOOLE_0:def 1;
consider a being Function such that
A9:
( a = a1 & dom a = dom A & ( for o being set st o in dom A holds
a . o in A . o ) )
by A8, CARD_3:def 5;
reconsider a = a as ManySortedSet of by A1, A9, PARTFUN1:def 4, RELAT_1:def 18;
consider r being set such that
A10:
( r in rng A & not r is trivial )
by A6, Def16;
consider p being set such that
A11:
( p in dom A & r = A . p )
by A10, FUNCT_1:def 5;
2 c= card r
by A10, Th4;
then consider t being set such that
A12:
( t in r & t <> a . p )
by Th3;
reconsider p = p as Element of I by A11, PARTFUN1:def 4;
set b = a +* p,t;
A13:
(a +* p,t) . p = t
by A9, A11, FUNCT_7:33;
A14: dom (a +* p,t) =
I
by PARTFUN1:def 4
.=
dom A
by PARTFUN1:def 4
;
then
a +* p,t in product A
by A14, CARD_3:18;
hence
2 c= card (product A)
by A8, A9, A12, A13, Th2; :: thesis: verum