let p, q be FinSequence; for A being set holds card ((p ^ q) " A) = (card (p " A)) + (card (q " A))
let A be set ; card ((p ^ q) " A) = (card (p " A)) + (card (q " A))
set X = (p ^ q) " A;
set B = { ((len p) + n) where n is Element of NAT : n in q " A } ;
defpred S1[ object , object ] means ex i being Nat st
( $1 = i & $2 = (len p) + i );
A1:
(p ^ q) " A = (p " A) \/ { ((len p) + n) where n is Element of NAT : n in q " A }
(p " A) /\ { ((len p) + n) where n is Element of NAT : n in q " A } = {}
then A20:
p " A misses { ((len p) + n) where n is Element of NAT : n in q " A }
;
reconsider B = { ((len p) + n) where n is Element of NAT : n in q " A } as finite set by A1, FINSET_1:1, XBOOLE_1:7;
A21:
card ((p ^ q) " A) = (card (p " A)) + (card B)
by A1, A20, CARD_2:40;
A22:
for x being object st x in q " A holds
ex y being object st S1[x,y]
consider f being Function such that
A23:
dom f = q " A
and
A24:
for x being object st x in q " A holds
S1[x,f . x]
from CLASSES1:sch 1(A22);
A25:
rng f = B
f is one-to-one
then
q " A,B are_equipotent
by A23, A25;
hence
card ((p ^ q) " A) = (card (p " A)) + (card (q " A))
by A21, CARD_1:5; verum