:: STIRL2_1 semantic presentation begin theorem Th1: :: STIRL2_1:1 for N being non empty Subset of NAT holds min N = min* N proof let N be non empty Subset of NAT; ::_thesis: min N = min* N A1: for n being ext-real number st n in N holds min* N <= n by NAT_1:def_1; min* N in N by NAT_1:def_1; hence min N = min* N by A1, XXREAL_2:def_7; ::_thesis: verum end; theorem Th2: :: STIRL2_1:2 for K, N being non empty Subset of NAT holds min ((min K),(min N)) = min (K \/ N) proof let K, N be non empty Subset of NAT; ::_thesis: min ((min K),(min N)) = min (K \/ N) set m = min ((min N),(min K)); A1: for k being ext-real number st k in N \/ K holds min ((min N),(min K)) <= k proof let k be ext-real number ; ::_thesis: ( k in N \/ K implies min ((min N),(min K)) <= k ) assume k in N \/ K ; ::_thesis: min ((min N),(min K)) <= k then ( k in N or k in K ) by XBOOLE_0:def_3; then A2: ( min N <= k or min K <= k ) by XXREAL_2:def_7; A3: min ((min N),(min K)) <= min K by XXREAL_0:17; min ((min N),(min K)) <= min N by XXREAL_0:17; hence min ((min N),(min K)) <= k by A2, A3, XXREAL_0:2; ::_thesis: verum end; ( min ((min N),(min K)) = min N or min ((min N),(min K)) = min K ) by XXREAL_0:15; then ( min ((min N),(min K)) in N or min ((min N),(min K)) in K ) by XXREAL_2:def_7; then min ((min N),(min K)) in N \/ K by XBOOLE_0:def_3; hence min ((min K),(min N)) = min (K \/ N) by A1, XXREAL_2:def_7; ::_thesis: verum end; theorem :: STIRL2_1:3 for Ke, Ne being Subset of NAT holds min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) proof let Ke, Ne be Subset of NAT; ::_thesis: min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) now__::_thesis:_min_((min*_Ke),(min*_Ne))_<=_min*_(Ke_\/_Ne) percases ( Ke is empty or Ne is empty or ( not Ke is empty & not Ne is empty ) ) ; suppose ( Ke is empty or Ne is empty ) ; ::_thesis: min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) then ( ( min* Ke = 0 & min* Ne >= 0 ) or ( min* Ne = 0 & min* Ke >= 0 ) ) by NAT_1:def_1; hence min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) by XXREAL_0:def_9; ::_thesis: verum end; suppose ( not Ke is empty & not Ne is empty ) ; ::_thesis: min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) then reconsider K = Ke, N = Ne as non empty Subset of NAT ; A1: min N = min* Ne by Th1; A2: min (K \/ N) = min* (Ke \/ Ne) by Th1; min K = min* Ke by Th1; hence min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) by A1, A2, Th2; ::_thesis: verum end; end; end; hence min ((min* Ke),(min* Ne)) <= min* (Ke \/ Ne) ; ::_thesis: verum end; theorem :: STIRL2_1:4 for Ne, Ke being Subset of NAT st not min* Ne in Ne /\ Ke holds min* Ne = min* (Ne \ Ke) proof let Ne, Ke be Subset of NAT; ::_thesis: ( not min* Ne in Ne /\ Ke implies min* Ne = min* (Ne \ Ke) ) assume A1: not min* Ne in Ne /\ Ke ; ::_thesis: min* Ne = min* (Ne \ Ke) now__::_thesis:_min*_Ne_=_min*_(Ne_\_Ke) percases ( Ne is empty or not Ne is empty ) ; suppose Ne is empty ; ::_thesis: min* Ne = min* (Ne \ Ke) hence min* Ne = min* (Ne \ Ke) ; ::_thesis: verum end; suppose not Ne is empty ; ::_thesis: min* Ne = min* (Ne \ Ke) then A2: min* Ne in Ne by NAT_1:def_1; then not min* Ne in Ke by A1, XBOOLE_0:def_4; then A3: min* Ne in Ne \ Ke by A2, XBOOLE_0:def_5; then A4: min* (Ne \ Ke) <= min* Ne by NAT_1:def_1; A5: Ne \ Ke c= Ne by XBOOLE_1:36; min* (Ne \ Ke) in Ne \ Ke by A3, NAT_1:def_1; then min* Ne <= min* (Ne \ Ke) by A5, NAT_1:def_1; hence min* Ne = min* (Ne \ Ke) by A4, XXREAL_0:1; ::_thesis: verum end; end; end; hence min* Ne = min* (Ne \ Ke) ; ::_thesis: verum end; theorem Th5: :: STIRL2_1:5 for n being Element of NAT holds ( min* {n} = n & min {n} = n ) proof let n be Element of NAT ; ::_thesis: ( min* {n} = n & min {n} = n ) A1: min* {n} in {n} by NAT_1:def_1; min* {n} = min {n} by Th1; hence ( min* {n} = n & min {n} = n ) by A1, TARSKI:def_1; ::_thesis: verum end; theorem Th6: :: STIRL2_1:6 for n, k being Element of NAT holds ( min* {n,k} = min (n,k) & min {n,k} = min (n,k) ) proof let n, k be Element of NAT ; ::_thesis: ( min* {n,k} = min (n,k) & min {n,k} = min (n,k) ) A1: min {n} = n by Th5; {n,k} = {n} \/ {k} by ENUMSET1:1; then A2: min {n,k} = min ((min {n}),(min {k})) by Th2; min {n,k} = min* {n,k} by Th1; hence ( min* {n,k} = min (n,k) & min {n,k} = min (n,k) ) by A2, A1, Th5; ::_thesis: verum end; theorem :: STIRL2_1:7 for n, k, l being Element of NAT holds min* {n,k,l} = min (n,(min (k,l))) proof let n, k, l be Element of NAT ; ::_thesis: min* {n,k,l} = min (n,(min (k,l))) A1: min {n,k,l} = min* {n,k,l} by Th1; {n,k,l} = {n} \/ {k,l} by ENUMSET1:2; then A2: min {n,k,l} = min ((min {n}),(min {k,l})) by Th2; min {k,l} = min (k,l) by Th6; hence min* {n,k,l} = min (n,(min (k,l))) by A2, A1, Th5; ::_thesis: verum end; theorem Th8: :: STIRL2_1:8 for n being Nat holds n is Subset of NAT proof let n be Nat; ::_thesis: n is Subset of NAT now__::_thesis:_for_x_being_set_st_x_in__{__l_where_l_is_Element_of_NAT_:_l_<_n__}__holds_ x_in_NAT let x be set ; ::_thesis: ( x in { l where l is Element of NAT : l < n } implies x in NAT ) assume x in { l where l is Element of NAT : l < n } ; ::_thesis: x in NAT then ex l being Element of NAT st ( x = l & l < n ) ; hence x in NAT ; ::_thesis: verum end; then { l where l is Element of NAT : l < n } c= NAT by TARSKI:def_3; hence n is Subset of NAT by AXIOMS:4; ::_thesis: verum end; registration let n be Nat; cluster -> natural for Element of n; coherence for b1 being Element of n holds b1 is natural ; end; theorem :: STIRL2_1:9 for n being Nat for N being non empty Subset of NAT st N c= n holds n - 1 is Element of NAT proof let n be Nat; ::_thesis: for N being non empty Subset of NAT st N c= n holds n - 1 is Element of NAT let N be non empty Subset of NAT; ::_thesis: ( N c= n implies n - 1 is Element of NAT ) A1: min* N in N by NAT_1:def_1; assume N c= n ; ::_thesis: n - 1 is Element of NAT then min* N in n by A1; then min* N in { l where l is Element of NAT : l < n } by AXIOMS:4; then ex l being Element of NAT st ( min* N = l & l < n ) ; hence n - 1 is Element of NAT by NAT_1:20; ::_thesis: verum end; theorem Th10: :: STIRL2_1:10 for k, n being Nat st k in n holds ( k <= n - 1 & n - 1 is Element of NAT ) proof let k, n be Nat; ::_thesis: ( k in n implies ( k <= n - 1 & n - 1 is Element of NAT ) ) assume k in n ; ::_thesis: ( k <= n - 1 & n - 1 is Element of NAT ) then k in { l where l is Element of NAT : l < n } by AXIOMS:4; then A1: ex l being Element of NAT st ( k = l & l < n ) ; then A2: n - 1 is Element of NAT by NAT_1:20; k < (n - 1) + 1 by A1; hence ( k <= n - 1 & n - 1 is Element of NAT ) by A2, NAT_1:13; ::_thesis: verum end; theorem :: STIRL2_1:11 for n being Nat holds min* n = 0 proof let n be Nat; ::_thesis: min* n = 0 now__::_thesis:_min*_n_=_0 percases ( 0 = n or 0 < n ) ; suppose 0 = n ; ::_thesis: min* n = 0 hence min* n = 0 by NAT_1:def_1; ::_thesis: verum end; suppose 0 < n ; ::_thesis: min* n = 0 then 0 in { l where l is Element of NAT : l < n } ; then A1: 0 in n by AXIOMS:4; n is Subset of NAT by Th8; hence min* n = 0 by A1, NAT_1:def_1; ::_thesis: verum end; end; end; hence min* n = 0 ; ::_thesis: verum end; theorem Th12: :: STIRL2_1:12 for n being Nat for N being non empty Subset of NAT st N c= n holds min* N <= n - 1 proof let n be Nat; ::_thesis: for N being non empty Subset of NAT st N c= n holds min* N <= n - 1 let N be non empty Subset of NAT; ::_thesis: ( N c= n implies min* N <= n - 1 ) A1: min* N in N by NAT_1:def_1; assume N c= n ; ::_thesis: min* N <= n - 1 hence min* N <= n - 1 by A1, Th10; ::_thesis: verum end; theorem :: STIRL2_1:13 for n being Nat for N being non empty Subset of NAT st N c= n & N <> {(n - 1)} holds min* N < n - 1 proof let n be Nat; ::_thesis: for N being non empty Subset of NAT st N c= n & N <> {(n - 1)} holds min* N < n - 1 let N be non empty Subset of NAT; ::_thesis: ( N c= n & N <> {(n - 1)} implies min* N < n - 1 ) assume that A1: N c= n and A2: N <> {(n - 1)} and A3: min* N >= n - 1 ; ::_thesis: contradiction now__::_thesis:_for_k_being_set_st_k_in_N_holds_ k_in_{(n_-_1)} let k be set ; ::_thesis: ( k in N implies k in {(n - 1)} ) assume A4: k in N ; ::_thesis: k in {(n - 1)} reconsider k9 = k as Element of NAT by A4; min* N <= k9 by A4, NAT_1:def_1; then A5: n - 1 <= k9 by A3, XXREAL_0:2; k9 <= n - 1 by A1, A4, Th10; then n - 1 = k by A5, XXREAL_0:1; hence k in {(n - 1)} by TARSKI:def_1; ::_thesis: verum end; then N c= {(n - 1)} by TARSKI:def_3; hence contradiction by A2, ZFMISC_1:33; ::_thesis: verum end; theorem Th14: :: STIRL2_1:14 for n being Nat for Ne being Subset of NAT st Ne c= n & n > 0 holds min* Ne <= n - 1 proof let n be Nat; ::_thesis: for Ne being Subset of NAT st Ne c= n & n > 0 holds min* Ne <= n - 1 let Ne be Subset of NAT; ::_thesis: ( Ne c= n & n > 0 implies min* Ne <= n - 1 ) assume that A1: Ne c= n and A2: n > 0 ; ::_thesis: min* Ne <= n - 1 now__::_thesis:_min*_Ne_<=_n_-_1 percases ( not Ne is empty or Ne is empty ) ; suppose not Ne is empty ; ::_thesis: min* Ne <= n - 1 hence min* Ne <= n - 1 by A1, Th12; ::_thesis: verum end; suppose Ne is empty ; ::_thesis: min* Ne <= n - 1 then min* Ne = 0 by NAT_1:def_1; hence min* Ne <= n - 1 by A2, NAT_1:20; ::_thesis: verum end; end; end; hence min* Ne <= n - 1 ; ::_thesis: verum end; definition let n be Nat; let X be set ; let f be Function of n,X; let x be set ; :: original: " redefine funcf " x -> Subset of NAT; coherence f " x is Subset of NAT proof now__::_thesis:_for_y_being_set_st_y_in_f_"_x_holds_ y_in_NAT A1: n is Subset of NAT by Th8; let y be set ; ::_thesis: ( y in f " x implies y in NAT ) assume y in f " x ; ::_thesis: y in NAT hence y in NAT by A1, TARSKI:def_3; ::_thesis: verum end; hence f " x is Subset of NAT by TARSKI:def_3; ::_thesis: verum end; end; definition let X be set ; let k be Nat; let f be Function of X,k; let x be set ; :: original: . redefine funcf . x -> Element of k; coherence f . x is Element of k proof percases ( x in dom f or not x in dom f ) ; suppose x in dom f ; ::_thesis: f . x is Element of k then f . x in rng f by FUNCT_1:3; hence f . x is Element of k ; ::_thesis: verum end; supposeA1: not x in dom f ; ::_thesis: f . x is Element of k A2: ( k = 0 or k > 0 ) ; f . x = 0 by A1, FUNCT_1:def_2; hence f . x is Element of k by A2, NAT_1:44, SUBSET_1:def_1; ::_thesis: verum end; end; end; end; definition let n, k be Nat; let f be Function of n,k; attrf is "increasing means :Def1: :: STIRL2_1:def 1 ( ( n = 0 implies k = 0 ) & ( k = 0 implies n = 0 ) & ( for l, m being Nat st l in rng f & m in rng f & l < m holds min* (f " {l}) < min* (f " {m}) ) ); end; :: deftheorem Def1 defines "increasing STIRL2_1:def_1_:_ for n, k being Nat for f being Function of n,k holds ( f is "increasing iff ( ( n = 0 implies k = 0 ) & ( k = 0 implies n = 0 ) & ( for l, m being Nat st l in rng f & m in rng f & l < m holds min* (f " {l}) < min* (f " {m}) ) ) ); theorem Th15: :: STIRL2_1:15 for n, k being Nat for f being Function of n,k st n = 0 & k = 0 holds ( f is onto & f is "increasing ) proof let n, k be Nat; ::_thesis: for f being Function of n,k st n = 0 & k = 0 holds ( f is onto & f is "increasing ) let f be Function of n,k; ::_thesis: ( n = 0 & k = 0 implies ( f is onto & f is "increasing ) ) assume that A1: n = 0 and A2: k = 0 ; ::_thesis: ( f is onto & f is "increasing ) A3: for l, m being Nat st l in k & m in k & l < m holds min* (f " {l}) < min* (f " {m}) by A2; rng f = {} by A1; hence ( f is onto & f is "increasing ) by A1, A2, A3, Def1, FUNCT_2:def_3; ::_thesis: verum end; theorem Th16: :: STIRL2_1:16 for k, n, m being Nat for f being Function of n,k st n > 0 holds min* (f " {m}) <= n - 1 proof let k, n, m be Nat; ::_thesis: for f being Function of n,k st n > 0 holds min* (f " {m}) <= n - 1 let f be Function of n,k; ::_thesis: ( n > 0 implies min* (f " {m}) <= n - 1 ) A1: f " {m} c= n proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in f " {m} or x in n ) assume x in f " {m} ; ::_thesis: x in n then x in dom f by FUNCT_1:def_7; hence x in n ; ::_thesis: verum end; assume n > 0 ; ::_thesis: min* (f " {m}) <= n - 1 hence min* (f " {m}) <= n - 1 by A1, Th14; ::_thesis: verum end; theorem Th17: :: STIRL2_1:17 for n, k being Nat for f being Function of n,k st f is onto holds n >= k proof let n, k be Nat; ::_thesis: for f being Function of n,k st f is onto holds n >= k let f be Function of n,k; ::_thesis: ( f is onto implies n >= k ) assume A1: f is onto ; ::_thesis: n >= k now__::_thesis:_n_>=_k percases ( k = 0 or k <> 0 ) ; suppose k = 0 ; ::_thesis: n >= k hence n >= k ; ::_thesis: verum end; supposeA2: k <> 0 ; ::_thesis: n >= k A3: rng f = k by A1, FUNCT_2:def_3; dom f = n by A2, FUNCT_2:def_1; then card k c= card n by A3, CARD_1:12; then A4: card k <= card n by NAT_1:39; card n = n by CARD_1:def_2; hence n >= k by A4, CARD_1:def_2; ::_thesis: verum end; end; end; hence n >= k ; ::_thesis: verum end; theorem Th18: :: STIRL2_1:18 for n, k being Nat for f being Function of n,k st f is onto & f is "increasing holds for m being Nat st m < k holds m <= min* (f " {m}) proof let n, k be Nat; ::_thesis: for f being Function of n,k st f is onto & f is "increasing holds for m being Nat st m < k holds m <= min* (f " {m}) let f be Function of n,k; ::_thesis: ( f is onto & f is "increasing implies for m being Nat st m < k holds m <= min* (f " {m}) ) defpred S1[ Nat] means ( $1 < k implies $1 <= min* (f " {$1}) ); assume A1: ( f is onto & f is "increasing ) ; ::_thesis: for m being Nat st m < k holds m <= min* (f " {m}) A2: for m being Nat st S1[m] holds S1[m + 1] proof A3: k = rng f by A1, FUNCT_2:def_3; let m be Nat; ::_thesis: ( S1[m] implies S1[m + 1] ) assume A4: S1[m] ; ::_thesis: S1[m + 1] assume A5: m + 1 < k ; ::_thesis: m + 1 <= min* (f " {(m + 1)}) m < m + 1 by NAT_1:19; then m < k by A5, XXREAL_0:2; then A6: m in rng f by A3, NAT_1:44; A7: m < m + 1 by NAT_1:19; m + 1 in rng f by A5, A3, NAT_1:44; then min* (f " {m}) < min* (f " {(m + 1)}) by A1, A6, A7, Def1; then m < min* (f " {(m + 1)}) by A4, A5, A7, XXREAL_0:2; hence m + 1 <= min* (f " {(m + 1)}) by NAT_1:13; ::_thesis: verum end; A8: S1[ 0 ] ; for m being Nat holds S1[m] from NAT_1:sch_2(A8, A2); hence for m being Nat st m < k holds m <= min* (f " {m}) ; ::_thesis: verum end; theorem Th19: :: STIRL2_1:19 for k, n being Nat for f being Function of n,k st f is onto & f is "increasing holds for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m proof let k, n be Nat; ::_thesis: for f being Function of n,k st f is onto & f is "increasing holds for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m let f be Function of n,k; ::_thesis: ( f is onto & f is "increasing implies for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m ) assume A1: ( f is onto & f is "increasing ) ; ::_thesis: for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m now__::_thesis:_for_m_being_Nat_st_m_<_k_holds_ min*_(f_"_{m})_<=_(n_-_k)_+_m percases ( k = 0 or k > 0 ) ; suppose k = 0 ; ::_thesis: for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m hence for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m ; ::_thesis: verum end; suppose k > 0 ; ::_thesis: for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m then reconsider k1 = k - 1 as Element of NAT by NAT_1:20; defpred S1[ Integer] means ( 0 <= $1 implies min* (f " {$1}) <= (n - k) + $1 ); A2: k1 < k1 + 1 by NAT_1:13; A3: for m being Integer st m <= k1 & S1[m] holds S1[m - 1] proof reconsider nk = n - k as Element of NAT by A1, Th17, NAT_1:21; A4: k = rng f by A1, FUNCT_2:def_3; let m be Integer; ::_thesis: ( m <= k1 & S1[m] implies S1[m - 1] ) assume m <= k1 ; ::_thesis: ( not S1[m] or S1[m - 1] ) then A5: m < k by A2, XXREAL_0:2; assume A6: S1[m] ; ::_thesis: S1[m - 1] assume 0 <= m - 1 ; ::_thesis: min* (f " {(m - 1)}) <= (n - k) + (m - 1) then reconsider m1 = m - 1 as Element of NAT by INT_1:3; A7: m1 < m1 + 1 by NAT_1:19; then m1 < k by A5, XXREAL_0:2; then A8: m1 in k by NAT_1:44; m1 + 1 in k by A5, NAT_1:44; then min* (f " {m1}) < min* (f " {(m1 + 1)}) by A1, A7, A8, A4, Def1; then min* (f " {m1}) < (nk + m1) + 1 by A6, XXREAL_0:2; hence min* (f " {(m - 1)}) <= (n - k) + (m - 1) by NAT_1:13; ::_thesis: verum end; A9: S1[k1] proof assume 0 <= k1 ; ::_thesis: min* (f " {k1}) <= (n - k) + k1 ( k = 0 iff n = 0 ) by A1, Def1; then min* (f " {k1}) <= n - 1 by Th16; hence min* (f " {k1}) <= (n - k) + k1 ; ::_thesis: verum end; A10: for m being Integer st m <= k1 holds S1[m] from INT_1:sch_3(A9, A3); now__::_thesis:_for_m_being_Nat_st_m_<_k_holds_ min*_(f_"_{m})_<=_(n_-_k)_+_m let m be Nat; ::_thesis: ( m < k implies min* (f " {m}) <= (n - k) + m ) assume m < k ; ::_thesis: min* (f " {m}) <= (n - k) + m then m < k1 + 1 ; then m <= k1 by NAT_1:13; hence min* (f " {m}) <= (n - k) + m by A10; ::_thesis: verum end; hence for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m ; ::_thesis: verum end; end; end; hence for m being Nat st m < k holds min* (f " {m}) <= (n - k) + m ; ::_thesis: verum end; theorem Th20: :: STIRL2_1:20 for n, k being Nat for f being Function of n,k st f is onto & f is "increasing & n = k holds f = id n proof let n, k be Nat; ::_thesis: for f being Function of n,k st f is onto & f is "increasing & n = k holds f = id n let f be Function of n,k; ::_thesis: ( f is onto & f is "increasing & n = k implies f = id n ) assume that A1: ( f is onto & f is "increasing ) and A2: n = k ; ::_thesis: f = id n now__::_thesis:_f_=_id_n percases ( n = 0 or n > 0 ) ; supposeA3: n = 0 ; ::_thesis: f = id n A4: for x being set st x in 0 holds f . x = x ; dom f = 0 by A3; hence f = id n by A3, A4, FUNCT_1:17; ::_thesis: verum end; supposeA5: n > 0 ; ::_thesis: f = id n A6: now__::_thesis:_for_m9_being_set_st_m9_in_n_holds_ f_._m9_=_m9 let m9 be set ; ::_thesis: ( m9 in n implies f . m9 = m9 ) assume A7: m9 in n ; ::_thesis: f . m9 = m9 n is Subset of NAT by Th8; then reconsider m = m9 as Element of NAT by A7; m in rng f by A1, A2, A7, FUNCT_2:def_3; then A8: ex x being set st ( x in dom f & f . x = m ) by FUNCT_1:def_3; m in {m} by TARSKI:def_1; then reconsider F = f " {m} as non empty Subset of NAT by A8, FUNCT_1:def_7; A9: m < k by A2, A7, NAT_1:44; then A10: m <= min* (f " {m}) by A1, Th18; (n - k) + m = m by A2; then min* (f " {m}) <= m by A1, A9, Th19; then A11: min* F = m by A10, XXREAL_0:1; min* F in F by NAT_1:def_1; then f . m in {m} by A11, FUNCT_1:def_7; hence f . m9 = m9 by TARSKI:def_1; ::_thesis: verum end; dom f = n by A2, A5, FUNCT_2:def_1; hence f = id n by A6, FUNCT_1:17; ::_thesis: verum end; end; end; hence f = id n ; ::_thesis: verum end; theorem :: STIRL2_1:21 for k, n being Nat for f being Function of n,k st f = id n & n > 0 holds f is "increasing proof let k, n be Nat; ::_thesis: for f being Function of n,k st f = id n & n > 0 holds f is "increasing let f be Function of n,k; ::_thesis: ( f = id n & n > 0 implies f is "increasing ) assume that A1: f = id n and A2: n > 0 ; ::_thesis: f is "increasing A3: ex x being set st x in n by A2, XBOOLE_0:def_1; A4: now__::_thesis:_for_l,_m_being_Nat_st_l_in_rng_f_&_m_in_rng_f_&_l_<_m_holds_ min*_(f_"_{l})_<_min*_(f_"_{m}) let l, m be Nat; ::_thesis: ( l in rng f & m in rng f & l < m implies min* (f " {l}) < min* (f " {m}) ) assume that A5: l in rng f and A6: m in rng f and A7: l < m ; ::_thesis: min* (f " {l}) < min* (f " {m}) A8: ex x being set st f " {l} = {x} by A1, A5, FUNCT_1:74; A9: l in {l} by TARSKI:def_1; consider l9 being set such that A10: l9 in dom f and A11: f . l9 = l by A5, FUNCT_1:def_3; l = l9 by A1, A10, A11, FUNCT_1:18; then l in f " {l} by A10, A11, A9, FUNCT_1:def_7; then ( f " {l} = {l} & l in NAT ) by A8, TARSKI:def_1; then A12: min* (f " {l}) = l by Th5; A13: m in {m} by TARSKI:def_1; A14: ex x being set st f " {m} = {x} by A1, A6, FUNCT_1:74; consider m9 being set such that A15: m9 in dom f and A16: f . m9 = m by A6, FUNCT_1:def_3; m = m9 by A1, A15, A16, FUNCT_1:18; then m in f " {m} by A15, A16, A13, FUNCT_1:def_7; then ( f " {m} = {m} & m in NAT ) by A14, TARSKI:def_1; hence min* (f " {l}) < min* (f " {m}) by A7, A12, Th5; ::_thesis: verum end; rng f = n by A1, RELAT_1:45; hence f is "increasing by A3, A4, Def1; ::_thesis: verum end; theorem :: STIRL2_1:22 for n, k being Nat holds not ( ( n = 0 implies k = 0 ) & ( k = 0 implies n = 0 ) & ( for f being Function of n,k holds not f is "increasing ) ) proof let n, k be Nat; ::_thesis: not ( ( n = 0 implies k = 0 ) & ( k = 0 implies n = 0 ) & ( for f being Function of n,k holds not f is "increasing ) ) assume A1: ( n = 0 iff k = 0 ) ; ::_thesis: ex f being Function of n,k st f is "increasing now__::_thesis:_ex_f_being_Function_of_n,k_st_f_is_"increasing percases ( n = 0 or n > 0 ) ; supposeA2: n = 0 ; ::_thesis: ex f being Function of n,k st f is "increasing set f = {} ; A3: dom {} = n by A2; rng {} = k by A1, A2; then reconsider f = {} as Function of n,k by A3, FUNCT_2:1; f is "increasing by A1, Th15; hence ex f being Function of n,k st f is "increasing ; ::_thesis: verum end; suppose n > 0 ; ::_thesis: ex f being Function of n,k st f is "increasing then consider f being Function such that A4: dom f = n and A5: rng f = {0} by FUNCT_1:5; reconsider f = f as Function of n,{0} by A4, A5, FUNCT_2:1; rng f c= k proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng f or x in k ) assume A6: x in rng f ; ::_thesis: x in k x = 0 by A6, TARSKI:def_1; hence x in k by A1, A6, NAT_1:44; ::_thesis: verum end; then reconsider f = f as Function of n,k by FUNCT_2:6; for l, m being Nat st l in rng f & m in rng f & l < m holds min* (f " {l}) < min* (f " {m}) by A5, TARSKI:def_1; then f is "increasing by A1, Def1; hence ex f being Function of n,k st f is "increasing ; ::_thesis: verum end; end; end; hence ex f being Function of n,k st f is "increasing ; ::_thesis: verum end; theorem Th23: :: STIRL2_1:23 for n, k being Nat holds not ( ( n = 0 implies k = 0 ) & ( k = 0 implies n = 0 ) & n >= k & ( for f being Function of n,k holds ( not f is onto or not f is "increasing ) ) ) proof let n, k be Nat; ::_thesis: not ( ( n = 0 implies k = 0 ) & ( k = 0 implies n = 0 ) & n >= k & ( for f being Function of n,k holds ( not f is onto or not f is "increasing ) ) ) assume that A1: ( n = 0 iff k = 0 ) and A2: n >= k ; ::_thesis: ex f being Function of n,k st ( f is onto & f is "increasing ) now__::_thesis:_ex_f_being_Function_of_n,k_st_ (_f_is_onto_&_f_is_"increasing_) percases ( n = 0 or n > 0 ) ; supposeA3: n = 0 ; ::_thesis: ex f being Function of n,k st ( f is onto & f is "increasing ) set f = {} ; A4: dom {} = n by A3; rng {} = k by A1, A3; then reconsider f = {} as Function of n,k by A4, FUNCT_2:1; ( f is onto & f is "increasing ) by A1, Th15; hence ex f being Function of n,k st ( f is onto & f is "increasing ) ; ::_thesis: verum end; supposeA5: n > 0 ; ::_thesis: ex f being Function of n,k st ( f is onto & f is "increasing ) then reconsider k1 = k - 1 as Element of NAT by A1, NAT_1:20; reconsider k = k, n = n as non empty Element of NAT by A1, A5, ORDINAL1:def_12; defpred S1[ Element of n, Element of k] means $2 = min ($1,k1); A6: for x being Element of n ex y being Element of k st S1[x,y] proof let x be Element of n; ::_thesis: ex y being Element of k st S1[x,y] A7: k1 < k1 + 1 by NAT_1:13; min (x,k1) <= k1 by XXREAL_0:17; then min (x,k1) < k by A7, XXREAL_0:2; then min (x,k1) in k by NAT_1:44; hence ex y being Element of k st S1[x,y] ; ::_thesis: verum end; consider f being Function of n,k such that A8: for m being Element of n holds S1[m,f . m] from FUNCT_2:sch_3(A6); now__::_thesis:_for_m9_being_set_st_m9_in_k_holds_ m9_in_rng_f let m9 be set ; ::_thesis: ( m9 in k implies m9 in rng f ) assume A9: m9 in k ; ::_thesis: m9 in rng f k is Subset of NAT by Th8; then reconsider m = m9 as Element of NAT by A9; A10: m < k1 + 1 by A9, NAT_1:44; then m < n by A2, XXREAL_0:2; then A11: m in n by NAT_1:44; then A12: m in dom f by FUNCT_2:def_1; m <= k1 by A10, NAT_1:13; then min (m,k1) = m by XXREAL_0:def_9; then f . m = m by A8, A11; hence m9 in rng f by A12, FUNCT_1:def_3; ::_thesis: verum end; then k c= rng f by TARSKI:def_3; then k = rng f by XBOOLE_0:def_10; then A13: f is onto by FUNCT_2:def_3; A14: for m being Nat st m in rng f holds min* (f " {m}) = m proof let m be Nat; ::_thesis: ( m in rng f implies min* (f " {m}) = m ) assume m in rng f ; ::_thesis: min* (f " {m}) = m then A15: m < k1 + 1 by NAT_1:44; then A16: m <= k1 by NAT_1:13; m < n by A2, A15, XXREAL_0:2; then A17: m in n by NAT_1:44; then A18: m in dom f by FUNCT_2:def_1; m <= k1 by A15, NAT_1:13; then min (m,k1) = m by XXREAL_0:def_9; then f . m = m by A8, A17; then A19: f . m in {m} by TARSKI:def_1; then A20: m in f " {m} by A18, FUNCT_1:def_7; A21: not f " {m} is empty by A19, A18, FUNCT_1:def_7; now__::_thesis:_min*_(f_"_{m})_=_m percases ( m < k1 or m = k1 ) by A16, XXREAL_0:1; supposeA22: m < k1 ; ::_thesis: min* (f " {m}) = m now__::_thesis:_for_l9_being_set_st_l9_in_f_"_{m}_holds_ l9_in_{m} A23: n is Subset of NAT by Th8; let l9 be set ; ::_thesis: ( l9 in f " {m} implies l9 in {m} ) assume A24: l9 in f " {m} ; ::_thesis: l9 in {m} l9 in dom f by A24, FUNCT_1:def_7; then l9 in n ; then reconsider l = l9 as Element of NAT by A23; f . l in {m} by A24, FUNCT_1:def_7; then A25: f . l = m by TARSKI:def_1; l in dom f by A24, FUNCT_1:def_7; then min (l,k1) = m by A8, A25; then l = m by A22, XXREAL_0:15; hence l9 in {m} by TARSKI:def_1; ::_thesis: verum end; then A26: f " {m} c= {m} by TARSKI:def_3; min* (f " {m}) in f " {m} by A21, NAT_1:def_1; hence min* (f " {m}) = m by A26, TARSKI:def_1; ::_thesis: verum end; supposeA27: m = k1 ; ::_thesis: min* (f " {m}) = m for l being Nat st l in f " {m} holds m <= l proof let l be Nat; ::_thesis: ( l in f " {m} implies m <= l ) assume A28: l in f " {m} ; ::_thesis: m <= l f . l in {m} by A28, FUNCT_1:def_7; then A29: f . l = m by TARSKI:def_1; l in dom f by A28, FUNCT_1:def_7; then f . l = min (l,m) by A8, A27; hence m <= l by A29, XXREAL_0:def_9; ::_thesis: verum end; hence min* (f " {m}) = m by A20, NAT_1:def_1; ::_thesis: verum end; end; end; hence min* (f " {m}) = m ; ::_thesis: verum end; now__::_thesis:_for_l,_m_being_Nat_st_l_in_rng_f_&_m_in_rng_f_&_l_<_m_holds_ min*_(f_"_{l})_<_min*_(f_"_{m}) let l, m be Nat; ::_thesis: ( l in rng f & m in rng f & l < m implies min* (f " {l}) < min* (f " {m}) ) assume that A30: l in rng f and A31: m in rng f and A32: l < m ; ::_thesis: min* (f " {l}) < min* (f " {m}) min* (f " {l}) = l by A14, A30; hence min* (f " {l}) < min* (f " {m}) by A14, A31, A32; ::_thesis: verum end; then f is "increasing by Def1; hence ex f being Function of n,k st ( f is onto & f is "increasing ) by A13; ::_thesis: verum end; end; end; hence ex f being Function of n,k st ( f is onto & f is "increasing ) ; ::_thesis: verum end; scheme :: STIRL2_1:sch 1 Sch1{ F1() -> Nat, F2() -> Nat, P1[ set ] } : { f where f is Function of F1(),F2() : P1[f] } is finite proof set F = { f where f is Function of F1(),F2() : P1[f] } ; now__::_thesis:__{__f_where_f_is_Function_of_F1(),F2()_:_P1[f]__}__is_finite percases ( F2() = 0 or F2() > 0 ) ; supposeA1: F2() = 0 ; ::_thesis: { f where f is Function of F1(),F2() : P1[f] } is finite { f where f is Function of F1(),F2() : P1[f] } c= {{}} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of F1(),F2() : P1[f] } or x in {{}} ) assume x in { f where f is Function of F1(),F2() : P1[f] } ; ::_thesis: x in {{}} then consider f being Function of F1(),F2() such that A2: x = f and P1[f] ; f = {} by A1; hence x in {{}} by A2, TARSKI:def_1; ::_thesis: verum end; hence { f where f is Function of F1(),F2() : P1[f] } is finite ; ::_thesis: verum end; supposeA3: F2() > 0 ; ::_thesis: { f where f is Function of F1(),F2() : P1[f] } is finite A4: { f where f is Function of F1(),F2() : P1[f] } c= Funcs (F1(),F2()) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of F1(),F2() : P1[f] } or x in Funcs (F1(),F2()) ) assume x in { f where f is Function of F1(),F2() : P1[f] } ; ::_thesis: x in Funcs (F1(),F2()) then ex f being Function of F1(),F2() st ( x = f & P1[f] ) ; hence x in Funcs (F1(),F2()) by A3, FUNCT_2:8; ::_thesis: verum end; Funcs (F1(),F2()) is finite by FRAENKEL:6; hence { f where f is Function of F1(),F2() : P1[f] } is finite by A4; ::_thesis: verum end; end; end; hence { f where f is Function of F1(),F2() : P1[f] } is finite ; ::_thesis: verum end; theorem Th24: :: STIRL2_1:24 for n, k being Nat holds { f where f is Function of n,k : ( f is onto & f is "increasing ) } is finite proof let n, k be Nat; ::_thesis: { f where f is Function of n,k : ( f is onto & f is "increasing ) } is finite defpred S1[ Function of n,k] means ( $1 is onto & $1 is "increasing ); { f where f is Function of n,k : S1[f] } is finite from STIRL2_1:sch_1(); hence { f where f is Function of n,k : ( f is onto & f is "increasing ) } is finite ; ::_thesis: verum end; theorem Th25: :: STIRL2_1:25 for n, k being Nat holds card { f where f is Function of n,k : ( f is onto & f is "increasing ) } is Element of NAT proof let n, k be Nat; ::_thesis: card { f where f is Function of n,k : ( f is onto & f is "increasing ) } is Element of NAT set F = { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; consider m being Nat such that A1: { f where f is Function of n,k : ( f is onto & f is "increasing ) } ,m are_equipotent by Th24, CARD_1:43; card { f where f is Function of n,k : ( f is onto & f is "increasing ) } = card m by A1, CARD_1:5; hence card { f where f is Function of n,k : ( f is onto & f is "increasing ) } is Element of NAT ; ::_thesis: verum end; definition let n, k be Nat; funcn block k -> Element of NAT equals :: STIRL2_1:def 2 card { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; coherence card { f where f is Function of n,k : ( f is onto & f is "increasing ) } is Element of NAT by Th25; end; :: deftheorem defines block STIRL2_1:def_2_:_ for n, k being Nat holds n block k = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; theorem Th26: :: STIRL2_1:26 for n being Nat holds n block n = 1 proof let n be Nat; ::_thesis: n block n = 1 set F = { f where f is Function of n,n : ( f is onto & f is "increasing ) } ; A1: { f where f is Function of n,n : ( f is onto & f is "increasing ) } c= {(id n)} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of n,n : ( f is onto & f is "increasing ) } or x in {(id n)} ) assume x in { f where f is Function of n,n : ( f is onto & f is "increasing ) } ; ::_thesis: x in {(id n)} then consider f being Function of n,n such that A2: x = f and A3: ( f is onto & f is "increasing ) ; f = id n by A3, Th20; hence x in {(id n)} by A2, TARSKI:def_1; ::_thesis: verum end; ( n = 0 iff n = 0 ) ; then consider f being Function of n,n such that A4: ( f is onto & f is "increasing ) by Th23; f in { f where f is Function of n,n : ( f is onto & f is "increasing ) } by A4; then { f where f is Function of n,n : ( f is onto & f is "increasing ) } = {(id n)} by A1, ZFMISC_1:33; hence n block n = 1 by CARD_1:30; ::_thesis: verum end; theorem Th27: :: STIRL2_1:27 for k being Nat st k <> 0 holds 0 block k = 0 proof let k be Nat; ::_thesis: ( k <> 0 implies 0 block k = 0 ) set F = { f where f is Function of 0,k : ( f is onto & f is "increasing ) } ; assume A1: k <> 0 ; ::_thesis: 0 block k = 0 { f where f is Function of 0,k : ( f is onto & f is "increasing ) } = {} proof assume { f where f is Function of 0,k : ( f is onto & f is "increasing ) } <> {} ; ::_thesis: contradiction then consider x being set such that A2: x in { f where f is Function of 0,k : ( f is onto & f is "increasing ) } by XBOOLE_0:def_1; ex f being Function of 0,k st ( x = f & f is onto & f is "increasing ) by A2; hence contradiction by A1, Def1; ::_thesis: verum end; hence 0 block k = 0 ; ::_thesis: verum end; theorem :: STIRL2_1:28 for k being Nat holds ( 0 block k = 1 iff k = 0 ) by Th26, Th27; theorem Th29: :: STIRL2_1:29 for n, k being Nat st n < k holds n block k = 0 proof let n, k be Nat; ::_thesis: ( n < k implies n block k = 0 ) set F = { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; assume A1: n < k ; ::_thesis: n block k = 0 { f where f is Function of n,k : ( f is onto & f is "increasing ) } = {} proof assume { f where f is Function of n,k : ( f is onto & f is "increasing ) } <> {} ; ::_thesis: contradiction then consider x being set such that A2: x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } by XBOOLE_0:def_1; ex f being Function of n,k st ( x = f & f is onto & f is "increasing ) by A2; hence contradiction by A1, Th17; ::_thesis: verum end; hence n block k = 0 ; ::_thesis: verum end; theorem :: STIRL2_1:30 for n being Nat holds ( n block 0 = 1 iff n = 0 ) proof let n be Nat; ::_thesis: ( n block 0 = 1 iff n = 0 ) ( n block 0 = 1 implies n = 0 ) proof set F = { f where f is Function of n,0 : ( f is onto & f is "increasing ) } ; A1: card {{}} = 1 by CARD_1:30; assume n block 0 = 1 ; ::_thesis: n = 0 then consider x being set such that A2: { f where f is Function of n,0 : ( f is onto & f is "increasing ) } = {x} by A1, CARD_1:29; x in { f where f is Function of n,0 : ( f is onto & f is "increasing ) } by A2, TARSKI:def_1; then ex f being Function of n,0 st ( x = f & f is onto & f is "increasing ) ; hence n = 0 by Def1; ::_thesis: verum end; hence ( n block 0 = 1 iff n = 0 ) by Th26; ::_thesis: verum end; theorem Th31: :: STIRL2_1:31 for n being Nat st n <> 0 holds n block 0 = 0 proof let n be Nat; ::_thesis: ( n <> 0 implies n block 0 = 0 ) set F = { f where f is Function of n,0 : ( f is onto & f is "increasing ) } ; assume A1: n <> 0 ; ::_thesis: n block 0 = 0 { f where f is Function of n,0 : ( f is onto & f is "increasing ) } = {} proof assume { f where f is Function of n,0 : ( f is onto & f is "increasing ) } <> {} ; ::_thesis: contradiction then consider x being set such that A2: x in { f where f is Function of n,0 : ( f is onto & f is "increasing ) } by XBOOLE_0:def_1; ex f being Function of n,0 st ( x = f & f is onto & f is "increasing ) by A2; hence contradiction by A1, Def1; ::_thesis: verum end; hence n block 0 = 0 ; ::_thesis: verum end; theorem Th32: :: STIRL2_1:32 for n being Nat st n <> 0 holds n block 1 = 1 proof let n be Nat; ::_thesis: ( n <> 0 implies n block 1 = 1 ) set F = { g where g is Function of n,1 : ( g is onto & g is "increasing ) } ; assume n <> 0 ; ::_thesis: n block 1 = 1 then n >= 1 + 0 by NAT_1:13; then consider f being Function of n,1 such that A1: ( f is onto & f is "increasing ) by Th23; A2: { g where g is Function of n,1 : ( g is onto & g is "increasing ) } c= {f} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of n,1 : ( g is onto & g is "increasing ) } or x in {f} ) assume x in { g where g is Function of n,1 : ( g is onto & g is "increasing ) } ; ::_thesis: x in {f} then consider g being Function of n,1 such that A3: x = g and ( g is onto & g is "increasing ) ; f = g by CARD_1:49, FUNCT_2:51; hence x in {f} by A3, TARSKI:def_1; ::_thesis: verum end; f in { g where g is Function of n,1 : ( g is onto & g is "increasing ) } by A1; then { g where g is Function of n,1 : ( g is onto & g is "increasing ) } = {f} by A2, ZFMISC_1:33; hence n block 1 = 1 by CARD_1:30; ::_thesis: verum end; theorem :: STIRL2_1:33 for k, n being Nat holds ( ( ( 1 <= k & k <= n ) or k = n ) iff n block k > 0 ) proof let k, n be Nat; ::_thesis: ( ( ( 1 <= k & k <= n ) or k = n ) iff n block k > 0 ) thus ( ( ( 1 <= k & k <= n ) or k = n ) implies n block k > 0 ) ::_thesis: ( not n block k > 0 or ( 1 <= k & k <= n ) or k = n ) proof set F = { g where g is Function of n,k : ( g is onto & g is "increasing ) } ; assume A1: ( ( 1 <= k & k <= n ) or k = n ) ; ::_thesis: n block k > 0 ( k = 0 iff n = 0 ) by A1; then consider f being Function of n,k such that A2: ( f is onto & f is "increasing ) by A1, Th23; f in { g where g is Function of n,k : ( g is onto & g is "increasing ) } by A2; hence n block k > 0 ; ::_thesis: verum end; thus ( not n block k > 0 or ( 1 <= k & k <= n ) or k = n ) ::_thesis: verum proof assume A3: n block k > 0 ; ::_thesis: ( ( 1 <= k & k <= n ) or k = n ) assume A4: ( not ( 1 <= k & k <= n ) & not k = n ) ; ::_thesis: contradiction then ( 1 + 0 > k or k > n ) ; then ( ( k = 0 & n <> k ) or k > n ) by A4, NAT_1:13; hence contradiction by A3, Th29, Th31; ::_thesis: verum end; end; scheme :: STIRL2_1:sch 2 Sch2{ F1() -> set , F2() -> set , F3() -> set , F4() -> set , F5() -> Function of F1(),F2(), F6( set ) -> set } : ex h being Function of F3(),F4() st ( h | F1() = F5() & ( for x being set st x in F3() \ F1() holds h . x = F6(x) ) ) provided A1: for x being set st x in F3() \ F1() holds F6(x) in F4() and A2: ( F1() c= F3() & F2() c= F4() ) and A3: ( F2() is empty implies F1() is empty ) proof defpred S1[ set , set ] means ( ( $1 in F1() implies $2 = F5() . $1 ) & ( $1 in F3() \ F1() implies $2 = F6($1) ) ); A4: for x being set st x in F3() holds ex y being set st ( y in F4() & S1[x,y] ) proof let x be set ; ::_thesis: ( x in F3() implies ex y being set st ( y in F4() & S1[x,y] ) ) assume A5: x in F3() ; ::_thesis: ex y being set st ( y in F4() & S1[x,y] ) now__::_thesis:_ex_y_being_set_st_ (_y_in_F4()_&_S1[x,y]_) percases ( x in F1() or not x in F1() ) ; supposeA6: x in F1() ; ::_thesis: ex y being set st ( y in F4() & S1[x,y] ) then x in dom F5() by A3, FUNCT_2:def_1; then F5() . x in rng F5() by FUNCT_1:def_3; then A7: F5() . x in F4() by A2, TARSKI:def_3; not x in F3() \ F1() by A6, XBOOLE_0:def_5; hence ex y being set st ( y in F4() & S1[x,y] ) by A7; ::_thesis: verum end; supposeA8: not x in F1() ; ::_thesis: ex y being set st ( y in F4() & S1[x,y] ) then x in F3() \ F1() by A5, XBOOLE_0:def_5; then F6(x) in F4() by A1; hence ex y being set st ( y in F4() & S1[x,y] ) by A8; ::_thesis: verum end; end; end; hence ex y being set st ( y in F4() & S1[x,y] ) ; ::_thesis: verum end; consider h being Function of F3(),F4() such that A9: for x being set st x in F3() holds S1[x,h . x] from FUNCT_2:sch_1(A4); A10: dom F5() = (dom h) /\ F1() proof now__::_thesis:_dom_F5()_=_(dom_h)_/\_F1() percases ( F2() is empty or not F2() is empty ) ; suppose F2() is empty ; ::_thesis: dom F5() = (dom h) /\ F1() hence dom F5() = (dom h) /\ F1() by A3; ::_thesis: verum end; supposeA11: not F2() is empty ; ::_thesis: dom F5() = (dom h) /\ F1() then not F4() is empty by A2; then A12: dom h = F3() by FUNCT_2:def_1; dom F5() = F1() by A11, FUNCT_2:def_1; hence dom F5() = (dom h) /\ F1() by A2, A12, XBOOLE_1:28; ::_thesis: verum end; end; end; hence dom F5() = (dom h) /\ F1() ; ::_thesis: verum end; take h ; ::_thesis: ( h | F1() = F5() & ( for x being set st x in F3() \ F1() holds h . x = F6(x) ) ) for x being set st x in dom F5() holds h . x = F5() . x proof let x be set ; ::_thesis: ( x in dom F5() implies h . x = F5() . x ) assume x in dom F5() ; ::_thesis: h . x = F5() . x then x in F1() ; hence h . x = F5() . x by A2, A9; ::_thesis: verum end; hence h | F1() = F5() by A10, FUNCT_1:46; ::_thesis: for x being set st x in F3() \ F1() holds h . x = F6(x) thus for x being set st x in F3() \ F1() holds h . x = F6(x) by A9; ::_thesis: verum end; scheme :: STIRL2_1:sch 3 Sch3{ F1() -> set , F2() -> set , F3() -> set , F4() -> set , F5( set ) -> set , P1[ set , set , set ] } : card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } provided A1: for x being set st x in F3() \ F1() holds F5(x) in F4() and A2: ( F1() c= F3() & F2() c= F4() ) and A3: ( F2() is empty implies F1() is empty ) and A4: for f being Function of F3(),F4() st ( for x being set st x in F3() \ F1() holds F5(x) = f . x ) holds ( P1[f,F3(),F4()] iff P1[f | F1(),F1(),F2()] ) proof defpred S1[ set , set ] means for f being Function of F1(),F2() for h being Function of F3(),F4() st f = $1 & h = $2 holds h | F1() = f; set F2 = { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; set F1 = { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } ; A5: for f9 being set st f9 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } holds ex g9 being set st ( g9 in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } & S1[f9,g9] ) proof let f9 be set ; ::_thesis: ( f9 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } implies ex g9 being set st ( g9 in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } & S1[f9,g9] ) ) assume f9 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } ; ::_thesis: ex g9 being set st ( g9 in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } & S1[f9,g9] ) then consider f being Function of F1(),F2() such that A6: f = f9 and A7: P1[f,F1(),F2()] ; consider h being Function of F3(),F4() such that A8: ( h | F1() = f & ( for x being set st x in F3() \ F1() holds h . x = F5(x) ) ) from STIRL2_1:sch_2(A1, A2, A3); A9: S1[f9,h] by A6, A8; A10: rng f c= F2() ; P1[h,F3(),F4()] by A4, A7, A8; then h in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by A8, A10; hence ex g9 being set st ( g9 in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } & S1[f9,g9] ) by A9; ::_thesis: verum end; consider ff being Function of { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } , { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } such that A11: for x being set st x in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } holds S1[x,ff . x] from FUNCT_2:sch_1(A5); A12: ( F4() is empty implies F3() is empty ) proof assume A13: F4() is empty ; ::_thesis: F3() is empty assume not F3() is empty ; ::_thesis: contradiction then ex x being set st x in F3() by XBOOLE_0:def_1; hence contradiction by A1, A2, A3, A13; ::_thesis: verum end; now__::_thesis:_card__{__f_where_f_is_Function_of_F1(),F2()_:_P1[f,F1(),F2()]__}__=_card__{__f_where_f_is_Function_of_F3(),F4()_:_(_P1[f,F3(),F4()]_&_rng_(f_|_F1())_c=_F2()_&_(_for_x_being_set_st_x_in_F3()_\_F1()_holds_ f_._x_=_F5(x)_)_)__}_ percases ( F4() is empty or not F4() is empty ) ; supposeA14: F4() is empty ; ::_thesis: card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } set Empty = {} ; A15: { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } c= {{}} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } or x in {{}} ) assume x in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; ::_thesis: x in {{}} then ex f being Function of F3(),F4() st ( f = x & P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) ; then x = {} by A14; hence x in {{}} by TARSKI:def_1; ::_thesis: verum end; A16: { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } c= {{}} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } or x in {{}} ) assume x in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } ; ::_thesis: x in {{}} then ex f being Function of F1(),F2() st ( f = x & P1[f,F1(),F2()] ) ; then x = {} by A2, A14; hence x in {{}} by TARSKI:def_1; ::_thesis: verum end; now__::_thesis:_card__{__f_where_f_is_Function_of_F1(),F2()_:_P1[f,F1(),F2()]__}__=_card__{__f_where_f_is_Function_of_F3(),F4()_:_(_P1[f,F3(),F4()]_&_rng_(f_|_F1())_c=_F2()_&_(_for_x_being_set_st_x_in_F3()_\_F1()_holds_ f_._x_=_F5(x)_)_)__}_ percases ( P1[ {} , {} , {} ] or not P1[ {} , {} , {} ] ) ; supposeA17: P1[ {} , {} , {} ] ; ::_thesis: card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } A18: rng {} = {} ; A19: F2() is empty by A2, A14; dom {} = {} ; then {} is Function of F1(),F2() by A3, A19, A18, FUNCT_2:1; then {} in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } by A3, A17, A19; then A20: { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = {{}} by A16, ZFMISC_1:33; A21: rng {} = {} ; dom {} = {} ; then reconsider Empty = {} as Function of F3(),F4() by A12, A14, A21, FUNCT_2:1; A22: for x being set st x in F3() \ F1() holds Empty . x = F5(x) by A12; rng (Empty | F1()) c= F2() by A2, A14; then {} in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by A12, A14, A17, A22; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by A15, A20, ZFMISC_1:33; ::_thesis: verum end; supposeA23: P1[ {} , {} , {} ] ; ::_thesis: card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } A24: not {} in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } proof assume {} in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } ; ::_thesis: contradiction then ex f being Function of F1(),F2() st ( f = {} & P1[f,F1(),F2()] ) ; hence contradiction by A2, A3, A14, A23; ::_thesis: verum end; A25: ( { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } = {} or { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } = {{}} ) by A15, ZFMISC_1:33; A26: not {} in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } proof assume {} in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; ::_thesis: contradiction then ex f being Function of F3(),F4() st ( f = {} & P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) ; hence contradiction by A12, A14, A23; ::_thesis: verum end; ( { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = {} or { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = {{}} ) by A16, ZFMISC_1:33; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by A24, A26, A25, TARSKI:def_1; ::_thesis: verum end; end; end; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; ::_thesis: verum end; supposeA27: not F4() is empty ; ::_thesis: card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } now__::_thesis:_card__{__f_where_f_is_Function_of_F1(),F2()_:_P1[f,F1(),F2()]__}__=_card__{__f_where_f_is_Function_of_F3(),F4()_:_(_P1[f,F3(),F4()]_&_rng_(f_|_F1())_c=_F2()_&_(_for_x_being_set_st_x_in_F3()_\_F1()_holds_ f_._x_=_F5(x)_)_)__}_ percases ( { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } is empty or not { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } is empty ) ; supposeA28: { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } is empty ; ::_thesis: card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } is empty proof assume not { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } is empty ; ::_thesis: contradiction then consider x being set such that A29: x in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } by XBOOLE_0:def_1; consider f being Function of F1(),F2() such that f = x and A30: P1[f,F1(),F2()] by A29; A31: rng f c= F2() ; consider h being Function of F3(),F4() such that A32: ( h | F1() = f & ( for x being set st x in F3() \ F1() holds h . x = F5(x) ) ) from STIRL2_1:sch_2(A1, A2, A3); P1[h,F3(),F4()] by A4, A30, A32; then h in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by A32, A31; hence contradiction by A28; ::_thesis: verum end; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by A28; ::_thesis: verum end; supposeA33: not { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } is empty ; ::_thesis: card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } c= rng ff proof let y be set ; :: according to TARSKI:def_3 ::_thesis: ( not y in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } or y in rng ff ) assume y in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; ::_thesis: y in rng ff then consider f being Function of F3(),F4() such that A34: f = y and A35: P1[f,F3(),F4()] and A36: rng (f | F1()) c= F2() and A37: for x being set st x in F3() \ F1() holds f . x = F5(x) ; A38: dom (f | F1()) = (dom f) /\ F1() by RELAT_1:61; dom f = F3() by A27, FUNCT_2:def_1; then A39: dom (f | F1()) = F1() by A2, A38, XBOOLE_1:28; then reconsider h = f | F1() as Function of F1(),(rng (f | F1())) by FUNCT_2:1; ( rng (f | F1()) is empty implies F1() is empty ) by A39, RELAT_1:42; then reconsider h = h as Function of F1(),F2() by A36, FUNCT_2:6; P1[f | F1(),F1(),F2()] by A4, A35, A37; then A40: h in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } ; A41: dom ff = { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } by A33, FUNCT_2:def_1; then ff . h in rng ff by A40, FUNCT_1:def_3; then ff . h in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; then consider ffh being Function of F3(),F4() such that A42: ffh = ff . h and P1[ffh,F3(),F4()] and rng (ffh | F1()) c= F2() and A43: for x being set st x in F3() \ F1() holds ffh . x = F5(x) ; now__::_thesis:_for_x_being_set_st_x_in_F3()_holds_ ffh_._x_=_f_._x let x be set ; ::_thesis: ( x in F3() implies ffh . x = f . x ) assume A44: x in F3() ; ::_thesis: ffh . x = f . x now__::_thesis:_ffh_._x_=_f_._x percases ( x in F1() or not x in F1() ) ; suppose x in F1() ; ::_thesis: ffh . x = f . x then A45: x in dom h by A3, FUNCT_2:def_1; ffh | F1() = h by A11, A40, A42; then h . x = ffh . x by A45, FUNCT_1:47; hence ffh . x = f . x by A45, FUNCT_1:47; ::_thesis: verum end; suppose not x in F1() ; ::_thesis: ffh . x = f . x then A46: x in F3() \ F1() by A44, XBOOLE_0:def_5; then ffh . x = F5(x) by A43; hence ffh . x = f . x by A37, A46; ::_thesis: verum end; end; end; hence ffh . x = f . x ; ::_thesis: verum end; then ffh = f by FUNCT_2:12; hence y in rng ff by A34, A40, A41, A42, FUNCT_1:def_3; ::_thesis: verum end; then A47: rng ff = { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by XBOOLE_0:def_10; for x1, x2 being set st x1 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } & x2 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } & ff . x1 = ff . x2 holds x1 = x2 proof let x1, x2 be set ; ::_thesis: ( x1 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } & x2 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } & ff . x1 = ff . x2 implies x1 = x2 ) assume that A48: x1 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } and A49: x2 in { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } and A50: ff . x1 = ff . x2 ; ::_thesis: x1 = x2 A51: ex f2 being Function of F1(),F2() st ( x2 = f2 & P1[f2,F1(),F2()] ) by A49; dom ff = { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } by A33, FUNCT_2:def_1; then ff . x1 in rng ff by A48, FUNCT_1:def_3; then ff . x1 in { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; then consider F1 being Function of F3(),F4() such that A52: ff . x1 = F1 and P1[F1,F3(),F4()] and rng (F1 | F1()) c= F2() and for x being set st x in F3() \ F1() holds F1 . x = F5(x) ; consider f1 being Function of F1(),F2() such that A53: x1 = f1 and P1[f1,F1(),F2()] by A48; F1 | F1() = f1 by A11, A48, A53, A52; hence x1 = x2 by A11, A49, A50, A53, A51, A52; ::_thesis: verum end; then A54: ff is one-to-one by A33, FUNCT_2:19; dom ff = { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } by A33, FUNCT_2:def_1; then { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } , { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } are_equipotent by A47, A54, WELLORD2:def_4; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } by CARD_1:5; ::_thesis: verum end; end; end; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; ::_thesis: verum end; end; end; hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of F3(),F4() : ( P1[f,F3(),F4()] & rng (f | F1()) c= F2() & ( for x being set st x in F3() \ F1() holds f . x = F5(x) ) ) } ; ::_thesis: verum end; scheme :: STIRL2_1:sch 4 Sch4{ F1() -> set , F2() -> set , F3() -> set , F4() -> set , P1[ set , set , set ] } : card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } provided A1: ( F2() is empty implies F1() is empty ) and A2: not F3() in F1() and A3: for f being Function of (F1() \/ {F3()}),(F2() \/ {F4()}) st f . F3() = F4() holds ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] iff P1[f | F1(),F1(),F2()] ) proof set Y1 = F2() \/ {F4()}; set X1 = F1() \/ {F3()}; deffunc H1( set ) -> set = F4(); A4: for f being Function of (F1() \/ {F3()}),(F2() \/ {F4()}) holds ( ( for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) iff f . F3() = F4() ) proof let f be Function of (F1() \/ {F3()}),(F2() \/ {F4()}); ::_thesis: ( ( for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) iff f . F3() = F4() ) A5: (F1() \/ {F3()}) \ F1() = {F3()} \ F1() by XBOOLE_1:40 .= {F3()} by A2, ZFMISC_1:59 ; thus ( ( for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) implies f . F3() = F4() ) ::_thesis: ( f . F3() = F4() implies for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) proof A6: F3() in {F3()} by TARSKI:def_1; assume for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ; ::_thesis: f . F3() = F4() hence f . F3() = F4() by A5, A6; ::_thesis: verum end; thus ( f . F3() = F4() implies for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) by A5, TARSKI:def_1; ::_thesis: verum end; A7: for f being Function of (F1() \/ {F3()}),(F2() \/ {F4()}) st ( for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) holds ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] iff P1[f | F1(),F1(),F2()] ) proof let f be Function of (F1() \/ {F3()}),(F2() \/ {F4()}); ::_thesis: ( ( for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ) implies ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] iff P1[f | F1(),F1(),F2()] ) ) assume for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x ; ::_thesis: ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] iff P1[f | F1(),F1(),F2()] ) then F4() = f . F3() by A4; hence ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] iff P1[f | F1(),F1(),F2()] ) by A3; ::_thesis: verum end; set F2 = { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } ; set F1 = { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } ; A8: for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) in F2() \/ {F4()} proof let x be set ; ::_thesis: ( x in (F1() \/ {F3()}) \ F1() implies H1(x) in F2() \/ {F4()} ) assume x in (F1() \/ {F3()}) \ F1() ; ::_thesis: H1(x) in F2() \/ {F4()} A9: {F4()} c= F2() \/ {F4()} by XBOOLE_1:7; F4() in {F4()} by TARSKI:def_1; hence H1(x) in F2() \/ {F4()} by A9; ::_thesis: verum end; A10: { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } c= { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } or x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } ) assume x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } ; ::_thesis: x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } then consider f being Function of (F1() \/ {F3()}),(F2() \/ {F4()}) such that A11: x = f and A12: P1[f,F1() \/ {F3()},F2() \/ {F4()}] and A13: rng (f | F1()) c= F2() and A14: for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ; f . F3() = F4() by A4, A14; hence x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } by A11, A12, A13; ::_thesis: verum end; A15: { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } c= { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } or x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } ) assume x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } ; ::_thesis: x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } then consider f being Function of (F1() \/ {F3()}),(F2() \/ {F4()}) such that A16: x = f and A17: P1[f,F1() \/ {F3()},F2() \/ {F4()}] and A18: rng (f | F1()) c= F2() and A19: f . F3() = F4() ; for x being set st x in (F1() \/ {F3()}) \ F1() holds H1(x) = f . x by A4, A19; hence x in { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } by A16, A17, A18; ::_thesis: verum end; A20: ( F1() c= F1() \/ {F3()} & F2() c= F2() \/ {F4()} ) by XBOOLE_1:7; card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & ( for x being set st x in (F1() \/ {F3()}) \ F1() holds f . x = H1(x) ) ) } from STIRL2_1:sch_3(A8, A20, A1, A7); hence card { f where f is Function of F1(),F2() : P1[f,F1(),F2()] } = card { f where f is Function of (F1() \/ {F3()}),(F2() \/ {F4()}) : ( P1[f,F1() \/ {F3()},F2() \/ {F4()}] & rng (f | F1()) c= F2() & f . F3() = F4() ) } by A10, A15, XBOOLE_0:def_10; ::_thesis: verum end; theorem Th34: :: STIRL2_1:34 for n, k being Nat for f being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f " {(f . n)} = {n} holds f . n = k proof let n, k be Nat; ::_thesis: for f being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f " {(f . n)} = {n} holds f . n = k let f be Function of (n + 1),(k + 1); ::_thesis: ( f is onto & f is "increasing & f " {(f . n)} = {n} implies f . n = k ) assume that A1: ( f is onto & f is "increasing ) and A2: f " {(f . n)} = {n} ; ::_thesis: f . n = k assume A3: f . n <> k ; ::_thesis: contradiction now__::_thesis:_contradiction percases ( f . n > k or f . n < k ) by A3, XXREAL_0:1; supposeA4: f . n > k ; ::_thesis: contradiction f . n < k + 1 by NAT_1:44; hence contradiction by A4, NAT_1:13; ::_thesis: verum end; supposeA5: f . n < k ; ::_thesis: contradiction A6: min* (f " {k}) <= (n + 1) - 1 by Th16; A7: rng f = k + 1 by A1, FUNCT_2:def_3; k < k + 1 by NAT_1:13; then k in rng f by A7, NAT_1:44; then ( min* (f " {(f . n)}) < min* (f " {k}) & k in NAT & n in NAT ) by A1, A5, A7, Def1, ORDINAL1:def_12; hence contradiction by A2, A6, Th5; ::_thesis: verum end; end; end; hence contradiction ; ::_thesis: verum end; theorem Th35: :: STIRL2_1:35 for n, k being Nat for f being Function of (n + 1),k st k <> 0 & f " {(f . n)} <> {n} holds ex m being Nat st ( m in f " {(f . n)} & m <> n ) proof let n, k be Nat; ::_thesis: for f being Function of (n + 1),k st k <> 0 & f " {(f . n)} <> {n} holds ex m being Nat st ( m in f " {(f . n)} & m <> n ) let f be Function of (n + 1),k; ::_thesis: ( k <> 0 & f " {(f . n)} <> {n} implies ex m being Nat st ( m in f " {(f . n)} & m <> n ) ) assume that A1: k <> 0 and A2: f " {(f . n)} <> {n} ; ::_thesis: ex m being Nat st ( m in f " {(f . n)} & m <> n ) A3: n < n + 1 by NAT_1:13; A4: f . n in {(f . n)} by TARSKI:def_1; dom f = n + 1 by A1, FUNCT_2:def_1; then n in dom f by A3, NAT_1:44; then n in f " {(f . n)} by A4, FUNCT_1:def_7; then ex m being set st ( m in f " {(f . n)} & m <> n ) by A2, ZFMISC_1:35; hence ex m being Nat st ( m in f " {(f . n)} & m <> n ) ; ::_thesis: verum end; theorem Th36: :: STIRL2_1:36 for n, k, m, l being Nat for f being Function of n,k for g being Function of (n + m),(k + l) st g is "increasing & f = g | n holds for i, j being Nat st i in rng f & j in rng f & i < j holds min* (f " {i}) < min* (f " {j}) proof let n, k, m, l be Nat; ::_thesis: for f being Function of n,k for g being Function of (n + m),(k + l) st g is "increasing & f = g | n holds for i, j being Nat st i in rng f & j in rng f & i < j holds min* (f " {i}) < min* (f " {j}) let f be Function of n,k; ::_thesis: for g being Function of (n + m),(k + l) st g is "increasing & f = g | n holds for i, j being Nat st i in rng f & j in rng f & i < j holds min* (f " {i}) < min* (f " {j}) let g be Function of (n + m),(k + l); ::_thesis: ( g is "increasing & f = g | n implies for i, j being Nat st i in rng f & j in rng f & i < j holds min* (f " {i}) < min* (f " {j}) ) assume that A1: g is "increasing and A2: f = g | n ; ::_thesis: for i, j being Nat st i in rng f & j in rng f & i < j holds min* (f " {i}) < min* (f " {j}) let i, j be Nat; ::_thesis: ( i in rng f & j in rng f & i < j implies min* (f " {i}) < min* (f " {j}) ) assume that A3: i in rng f and A4: j in rng f and A5: i < j ; ::_thesis: min* (f " {i}) < min* (f " {j}) A6: for k1 being Element of NAT st k1 in rng f holds ( k1 in rng g & min* (f " {k1}) = min* (g " {k1}) ) proof A7: n is Subset of NAT by Th8; let k1 be Element of NAT ; ::_thesis: ( k1 in rng f implies ( k1 in rng g & min* (f " {k1}) = min* (g " {k1}) ) ) assume A8: k1 in rng f ; ::_thesis: ( k1 in rng g & min* (f " {k1}) = min* (g " {k1}) ) consider x being set such that A9: x in dom f and A10: f . x = k1 by A8, FUNCT_1:def_3; A11: dom f = n by A8, FUNCT_2:def_1; x in n by A9; then reconsider x9 = x as Element of NAT by A7; A12: x9 < n by A9, NAT_1:44; A13: f . x9 = g . x9 by A2, A9, FUNCT_1:47; A14: dom g = n + m by A8, FUNCT_2:def_1; n <= n + m by NAT_1:11; then A15: n c= n + m by NAT_1:39; A16: now__::_thesis:_for_n1_being_Nat_st_n1_in_f_"_{k1}_holds_ min*_(g_"_{k1})_<=_n1 let n1 be Nat; ::_thesis: ( n1 in f " {k1} implies min* (g " {k1}) <= n1 ) assume A17: n1 in f " {k1} ; ::_thesis: min* (g " {k1}) <= n1 A18: n1 in n by A11, A17, FUNCT_1:def_7; f . n1 in {k1} by A17, FUNCT_1:def_7; then g . n1 in {k1} by A2, A11, A18, FUNCT_1:47; then n1 in g " {k1} by A14, A15, A18, FUNCT_1:def_7; hence min* (g " {k1}) <= n1 by NAT_1:def_1; ::_thesis: verum end; k1 in {k1} by TARSKI:def_1; then A19: x9 in g " {k1} by A9, A10, A11, A14, A15, A13, FUNCT_1:def_7; then min* (g " {k1}) <= x9 by NAT_1:def_1; then min* (g " {k1}) < n by A12, XXREAL_0:2; then A20: min* (g " {k1}) in dom f by A11, NAT_1:44; min* (g " {k1}) in g " {k1} by A19, NAT_1:def_1; then g . (min* (g " {k1})) in {k1} by FUNCT_1:def_7; then f . (min* (g " {k1})) in {k1} by A2, A20, FUNCT_1:47; then min* (g " {k1}) in f " {k1} by A20, FUNCT_1:def_7; hence ( k1 in rng g & min* (f " {k1}) = min* (g " {k1}) ) by A9, A10, A11, A14, A15, A13, A16, FUNCT_1:def_3, NAT_1:def_1; ::_thesis: verum end; A21: ( i in NAT & j in NAT ) by ORDINAL1:def_12; then A22: j in rng g by A4, A6; A23: min* (f " {j}) = min* (g " {j}) by A4, A6, A21; A24: min* (f " {i}) = min* (g " {i}) by A3, A6, A21; i in rng g by A3, A6, A21; hence min* (f " {i}) < min* (f " {j}) by A1, A5, A22, A24, A23, Def1; ::_thesis: verum end; theorem Th37: :: STIRL2_1:37 for n, k being Nat for f being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f " {(f . n)} = {n} holds ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) proof let n, k be Nat; ::_thesis: for f being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f " {(f . n)} = {n} holds ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) let f be Function of (n + 1),(k + 1); ::_thesis: ( f is onto & f is "increasing & f " {(f . n)} = {n} implies ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) ) assume that A1: ( f is onto & f is "increasing ) and A2: f " {(f . n)} = {n} ; ::_thesis: ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) now__::_thesis:_(_rng_(f_|_n)_c=_k_&_(_for_g_being_Function_of_n,k_st_g_=_f_|_n_holds_ (_g_is_onto_&_g_is_"increasing_)_)_) percases ( n = 0 or n > 0 ) ; supposeA3: n = 0 ; ::_thesis: ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) then 0 + 1 >= k + 1 by A1, Th17; then k = 0 by XREAL_1:6; hence ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) by A3, Th15; ::_thesis: verum end; supposeA4: n > 0 ; ::_thesis: ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) thus A5: rng (f | n) c= k ::_thesis: for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) proof let fi be set ; :: according to TARSKI:def_3 ::_thesis: ( not fi in rng (f | n) or fi in k ) assume A6: fi in rng (f | n) ; ::_thesis: fi in k rng (f | n) c= rng f by RELAT_1:70; then fi in rng f by A6; then A7: fi in k + 1 ; k + 1 is Subset of NAT by Th8; then reconsider fi = fi as Element of NAT by A7; consider i being set such that A8: i in dom (f | n) and A9: (f | n) . i = fi by A6, FUNCT_1:def_3; i in (dom f) /\ n by A8, RELAT_1:61; then A10: i in n by XBOOLE_0:def_4; n is Subset of NAT by Th8; then reconsider i = i as Element of NAT by A10; A11: f . i < k proof f . i < k + 1 by NAT_1:44; then A12: f . i <= k by NAT_1:13; assume f . i >= k ; ::_thesis: contradiction then A13: f . i = k by A12, XXREAL_0:1; A14: f . i in {(f . i)} by TARSKI:def_1; A15: f . n = k by A1, A2, Th34; A16: i in (dom f) /\ n by A8, RELAT_1:61; then i in dom f by XBOOLE_0:def_4; then i in f " {(f . n)} by A13, A14, A15, FUNCT_1:def_7; then ( i >= min* (f " {(f . n)}) & i in NAT & n in NAT ) by NAT_1:def_1, ORDINAL1:def_12; then A17: i >= n by A2, Th5; i in n by A16, XBOOLE_0:def_4; hence contradiction by A17, NAT_1:44; ::_thesis: verum end; f . i = (f | n) . i by A8, FUNCT_1:47; hence fi in k by A9, A11, NAT_1:44; ::_thesis: verum end; thus for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ::_thesis: verum proof let g be Function of n,k; ::_thesis: ( g = f | n implies ( g is onto & g is "increasing ) ) assume A18: g = f | n ; ::_thesis: ( g is onto & g is "increasing ) k c= rng g proof n < n + 1 by NAT_1:13; then A19: n c= n + 1 by NAT_1:39; dom f = n + 1 by FUNCT_2:def_1; then A20: n = (dom f) /\ n by A19, XBOOLE_1:28; let k1 be set ; :: according to TARSKI:def_3 ::_thesis: ( not k1 in k or k1 in rng g ) assume A21: k1 in k ; ::_thesis: k1 in rng g k is Subset of NAT by Th8; then reconsider k9 = k1 as Element of NAT by A21; k9 < k by A21, NAT_1:44; then k9 < k + 1 by NAT_1:13; then A22: k9 in k + 1 by NAT_1:44; A23: dom f = n + 1 by FUNCT_2:def_1; rng f = k + 1 by A1, FUNCT_2:def_3; then consider n1 being set such that A24: n1 in dom f and A25: f . n1 = k9 by A22, FUNCT_1:def_3; n + 1 is Subset of NAT by Th8; then reconsider n1 = n1 as Element of NAT by A24, A23; n1 < n + 1 by A24, NAT_1:44; then A26: n1 <= n by NAT_1:13; f . n = k by A1, A2, Th34; then n1 <> n by A21, A25; then A27: n1 < n by A26, XXREAL_0:1; (dom f) /\ n = dom (f | n) by RELAT_1:61; then A28: n1 in dom g by A18, A27, A20, NAT_1:44; then g . n1 in rng g by FUNCT_1:def_3; hence k1 in rng g by A18, A25, A28, FUNCT_1:47; ::_thesis: verum end; then k = rng g by XBOOLE_0:def_10; hence g is onto by FUNCT_2:def_3; ::_thesis: g is "increasing A29: (dom f) /\ n = dom (f | n) by RELAT_1:61; n < n + 1 by NAT_1:13; then A30: n c= n + 1 by NAT_1:39; dom f = n + 1 by FUNCT_2:def_1; then A31: n = (dom f) /\ n by A30, XBOOLE_1:28; 0 in n by A4, NAT_1:44; then (f | n) . 0 in rng (f | n) by A31, A29, FUNCT_1:def_3; then A32: ( n = 0 iff k = 0 ) by A5; for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) by A1, A18, Th36; hence g is "increasing by A32, Def1; ::_thesis: verum end; end; end; end; hence ( rng (f | n) c= k & ( for g being Function of n,k st g = f | n holds ( g is onto & g is "increasing ) ) ) ; ::_thesis: verum end; theorem Th38: :: STIRL2_1:38 for n, k being Nat for f being Function of (n + 1),k for g being Function of n,k st f is onto & f is "increasing & f " {(f . n)} <> {n} & f | n = g holds ( g is onto & g is "increasing ) proof let n, k be Nat; ::_thesis: for f being Function of (n + 1),k for g being Function of n,k st f is onto & f is "increasing & f " {(f . n)} <> {n} & f | n = g holds ( g is onto & g is "increasing ) let f be Function of (n + 1),k; ::_thesis: for g being Function of n,k st f is onto & f is "increasing & f " {(f . n)} <> {n} & f | n = g holds ( g is onto & g is "increasing ) let g be Function of n,k; ::_thesis: ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f | n = g implies ( g is onto & g is "increasing ) ) assume that A1: ( f is onto & f is "increasing ) and A2: f " {(f . n)} <> {n} and A3: f | n = g ; ::_thesis: ( g is onto & g is "increasing ) now__::_thesis:_(_g_is_onto_&_g_is_"increasing_) percases ( k = 0 or k > 0 ) ; suppose k = 0 ; ::_thesis: ( g is onto & g is "increasing ) hence ( g is onto & g is "increasing ) by A1, Def1; ::_thesis: verum end; supposeA4: k > 0 ; ::_thesis: ( g is onto & g is "increasing ) A5: rng f = k by A1, FUNCT_2:def_3; now__::_thesis:_(_g_is_onto_&_g_is_"increasing_) k = k + 0 ; then A6: for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) by A1, A3, Th36; A7: k c= rng g proof A8: n + 1 is Subset of NAT by Th8; let k1 be set ; :: according to TARSKI:def_3 ::_thesis: ( not k1 in k or k1 in rng g ) assume A9: k1 in k ; ::_thesis: k1 in rng g consider x being set such that A10: x in dom f and A11: f . x = k1 by A5, A9, FUNCT_1:def_3; dom f = n + 1 by A9, FUNCT_2:def_1; then reconsider x = x as Element of NAT by A10, A8; x < n + 1 by A10, NAT_1:44; then A12: x <= n by NAT_1:13; now__::_thesis:_k1_in_rng_g percases ( x < n or x = n ) by A12, XXREAL_0:1; supposeA13: x < n ; ::_thesis: k1 in rng g A14: dom g = n by A4, FUNCT_2:def_1; A15: x in n by A13, NAT_1:44; then g . x = f . x by A3, A14, FUNCT_1:47; hence k1 in rng g by A11, A15, A14, FUNCT_1:def_3; ::_thesis: verum end; suppose x = n ; ::_thesis: k1 in rng g then consider m being Nat such that A16: m in f " {k1} and A17: m <> n by A2, A4, A11, Th35; f . m in {k1} by A16, FUNCT_1:def_7; then A18: f . m = k1 by TARSKI:def_1; m in dom f by A16, FUNCT_1:def_7; then m < n + 1 by NAT_1:44; then m <= n by NAT_1:13; then m < n by A17, XXREAL_0:1; then A19: m in n by NAT_1:44; A20: n = dom g by A4, FUNCT_2:def_1; then g . m = f . m by A3, A19, FUNCT_1:47; hence k1 in rng g by A19, A20, A18, FUNCT_1:def_3; ::_thesis: verum end; end; end; hence k1 in rng g ; ::_thesis: verum end; then A21: rng g = k by XBOOLE_0:def_10; ( n = 0 iff k = 0 ) by A4, A7; hence ( g is onto & g is "increasing ) by A21, A6, Def1, FUNCT_2:def_3; ::_thesis: verum end; hence ( g is onto & g is "increasing ) ; ::_thesis: verum end; end; end; hence ( g is onto & g is "increasing ) ; ::_thesis: verum end; theorem Th39: :: STIRL2_1:39 for n, k, m being Nat for f being Function of n,k for g being Function of (n + 1),(k + m) st f is onto & f is "increasing & f = g | n holds for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) proof let n, k, m be Nat; ::_thesis: for f being Function of n,k for g being Function of (n + 1),(k + m) st f is onto & f is "increasing & f = g | n holds for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) let f be Function of n,k; ::_thesis: for g being Function of (n + 1),(k + m) st f is onto & f is "increasing & f = g | n holds for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) let g be Function of (n + 1),(k + m); ::_thesis: ( f is onto & f is "increasing & f = g | n implies for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) ) assume that A1: ( f is onto & f is "increasing ) and A2: f = g | n ; ::_thesis: for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) A3: for i being Nat st i < n holds f . i = g . i proof ( k = 0 iff n = 0 ) by A1, Def1; then A4: dom f = n by FUNCT_2:def_1; let i be Nat; ::_thesis: ( i < n implies f . i = g . i ) assume i < n ; ::_thesis: f . i = g . i then i in n by NAT_1:44; hence f . i = g . i by A2, A4, FUNCT_1:47; ::_thesis: verum end; A5: for l being Nat st l in rng g & not l in rng f holds l = g . n proof A6: n + 1 is Subset of NAT by Th8; let l be Nat; ::_thesis: ( l in rng g & not l in rng f implies l = g . n ) assume that A7: l in rng g and A8: not l in rng f ; ::_thesis: l = g . n consider x being set such that A9: x in dom g and A10: g . x = l by A7, FUNCT_1:def_3; assume A11: l <> g . n ; ::_thesis: contradiction dom g = n + 1 by A7, FUNCT_2:def_1; then reconsider x = x as Element of NAT by A9, A6; x < n + 1 by A9, NAT_1:44; then x <= n by NAT_1:13; then A12: x < n by A11, A10, XXREAL_0:1; then A13: x in n by NAT_1:44; k <> 0 by A1, A12, Def1; then A14: dom f = n by FUNCT_2:def_1; f . x = g . x by A3, A12; hence contradiction by A8, A10, A14, A13, FUNCT_1:def_3; ::_thesis: verum end; A15: for l being Nat st l in rng g & not l in rng f holds min* (g " {l}) = n proof A16: n < n + 1 by NAT_1:13; let l be Nat; ::_thesis: ( l in rng g & not l in rng f implies min* (g " {l}) = n ) assume that A17: l in rng g and A18: not l in rng f ; ::_thesis: min* (g " {l}) = n A19: l in {l} by TARSKI:def_1; dom g = n + 1 by A17, FUNCT_2:def_1; then A20: n in dom g by A16, NAT_1:44; g . n = l by A5, A17, A18; then n in g " {l} by A20, A19, FUNCT_1:def_7; then min* (g " {l}) in g " {l} by NAT_1:def_1; then A21: g . (min* (g " {l})) in {l} by FUNCT_1:def_7; assume A22: min* (g " {l}) <> n ; ::_thesis: contradiction min* (g " {l}) <= (n + 1) - 1 by Th16; then A23: min* (g " {l}) < n by A22, XXREAL_0:1; then k <> 0 by A1, Def1; then A24: dom f = n by FUNCT_2:def_1; min* (g " {l}) in n by A23, NAT_1:44; then A25: f . (min* (g " {l})) in rng f by A24, FUNCT_1:def_3; f . (min* (g " {l})) = g . (min* (g " {l})) by A3, A23; hence contradiction by A18, A21, A25, TARSKI:def_1; ::_thesis: verum end; A26: for k1 being Element of NAT st k1 in rng f holds min* (g " {k1}) = min* (f " {k1}) proof n <= n + 1 by NAT_1:11; then A27: n c= n + 1 by NAT_1:39; let k1 be Element of NAT ; ::_thesis: ( k1 in rng f implies min* (g " {k1}) = min* (f " {k1}) ) assume A28: k1 in rng f ; ::_thesis: min* (g " {k1}) = min* (f " {k1}) consider x being set such that A29: x in dom f and A30: f . x = k1 by A28, FUNCT_1:def_3; A31: x in n by A29; A32: dom g = n + 1 by A28, FUNCT_2:def_1; n is Subset of NAT by Th8; then reconsider x = x as Element of NAT by A31; k1 in {k1} by TARSKI:def_1; then A33: x in f " {k1} by A29, A30, FUNCT_1:def_7; then A34: min* (f " {k1}) <= x by NAT_1:def_1; A35: x < n by A29, NAT_1:44; then A36: min* (f " {k1}) < n by A34, XXREAL_0:2; A37: dom f = n by A28, FUNCT_2:def_1; A38: now__::_thesis:_for_n1_being_Nat_st_n1_in_g_"_{k1}_holds_ min*_(f_"_{k1})_<=_n1 let n1 be Nat; ::_thesis: ( n1 in g " {k1} implies min* (f " {k1}) <= n1 ) assume A39: n1 in g " {k1} ; ::_thesis: min* (f " {k1}) <= n1 n1 in n + 1 by A32, A39, FUNCT_1:def_7; then n1 < n + 1 by NAT_1:44; then A40: n1 <= n by NAT_1:13; now__::_thesis:_min*_(f_"_{k1})_<=_n1 percases ( n1 < n or n1 = n ) by A40, XXREAL_0:1; supposeA41: n1 < n ; ::_thesis: min* (f " {k1}) <= n1 g . n1 in {k1} by A39, FUNCT_1:def_7; then A42: f . n1 in {k1} by A3, A41; n1 in dom f by A37, A41, NAT_1:44; then n1 in f " {k1} by A42, FUNCT_1:def_7; hence min* (f " {k1}) <= n1 by NAT_1:def_1; ::_thesis: verum end; suppose n1 = n ; ::_thesis: min* (f " {k1}) <= n1 hence min* (f " {k1}) <= n1 by A34, A35, XXREAL_0:2; ::_thesis: verum end; end; end; hence min* (f " {k1}) <= n1 ; ::_thesis: verum end; min* (f " {k1}) in f " {k1} by A33, NAT_1:def_1; then f . (min* (f " {k1})) in {k1} by FUNCT_1:def_7; then A43: g . (min* (f " {k1})) in {k1} by A3, A36; min* (f " {k1}) in n by A36, NAT_1:44; then min* (f " {k1}) in g " {k1} by A32, A27, A43, FUNCT_1:def_7; hence min* (g " {k1}) = min* (f " {k1}) by A38, NAT_1:def_1; ::_thesis: verum end; let i, j be Nat; ::_thesis: ( i in rng g & j in rng g & i < j implies min* (g " {i}) < min* (g " {j}) ) assume that A44: i in rng g and A45: j in rng g and A46: i < j ; ::_thesis: min* (g " {i}) < min* (g " {j}) A47: for l being Nat st l in rng g & not l in rng f holds l >= k proof let l be Nat; ::_thesis: ( l in rng g & not l in rng f implies l >= k ) assume that l in rng g and A48: not l in rng f ; ::_thesis: l >= k assume l < k ; ::_thesis: contradiction then l in k by NAT_1:44; hence contradiction by A1, A48, FUNCT_2:def_3; ::_thesis: verum end; A49: ( i in NAT & j in NAT ) by ORDINAL1:def_12; now__::_thesis:_min*_(g_"_{i})_<_min*_(g_"_{j}) percases ( ( i in rng f & j in rng f ) or ( i in rng f & not j in rng f ) or ( not i in rng f & j in rng f ) or ( not i in rng f & not j in rng f ) ) ; supposeA50: ( i in rng f & j in rng f ) ; ::_thesis: min* (g " {i}) < min* (g " {j}) then A51: min* (g " {j}) = min* (f " {j}) by A26, A49; min* (g " {i}) = min* (f " {i}) by A26, A50, A49; hence min* (g " {i}) < min* (g " {j}) by A1, A46, A50, A51, Def1; ::_thesis: verum end; supposeA52: ( i in rng f & not j in rng f ) ; ::_thesis: min* (g " {i}) < min* (g " {j}) then A53: n <> 0 ; then min* (f " {i}) <= n - 1 by Th16; then A54: min* (g " {i}) <= n - 1 by A26, A52, A49; n - 1 is Element of NAT by A53, NAT_1:20; then A55: n - 1 < (n - 1) + 1 by NAT_1:13; min* (g " {j}) = n by A45, A15, A52; hence min* (g " {i}) < min* (g " {j}) by A54, A55, XXREAL_0:2; ::_thesis: verum end; supposeA56: ( not i in rng f & j in rng f ) ; ::_thesis: min* (g " {i}) < min* (g " {j}) then A57: j < k by NAT_1:44; i >= k by A44, A47, A56; hence min* (g " {i}) < min* (g " {j}) by A46, A57, XXREAL_0:2; ::_thesis: verum end; supposeA58: ( not i in rng f & not j in rng f ) ; ::_thesis: min* (g " {i}) < min* (g " {j}) then i = g . n by A44, A5; hence min* (g " {i}) < min* (g " {j}) by A45, A46, A5, A58; ::_thesis: verum end; end; end; hence min* (g " {i}) < min* (g " {j}) ; ::_thesis: verum end; theorem Th40: :: STIRL2_1:40 for n, k being Nat for f being Function of n,k for g being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f = g | n & g . n = k holds ( g is onto & g is "increasing & g " {(g . n)} = {n} ) proof let n, k be Nat; ::_thesis: for f being Function of n,k for g being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f = g | n & g . n = k holds ( g is onto & g is "increasing & g " {(g . n)} = {n} ) let f be Function of n,k; ::_thesis: for g being Function of (n + 1),(k + 1) st f is onto & f is "increasing & f = g | n & g . n = k holds ( g is onto & g is "increasing & g " {(g . n)} = {n} ) let g be Function of (n + 1),(k + 1); ::_thesis: ( f is onto & f is "increasing & f = g | n & g . n = k implies ( g is onto & g is "increasing & g " {(g . n)} = {n} ) ) assume that A1: ( f is onto & f is "increasing ) and A2: f = g | n and A3: g . n = k ; ::_thesis: ( g is onto & g is "increasing & g " {(g . n)} = {n} ) k + 1 c= rng g proof let x9 be set ; :: according to TARSKI:def_3 ::_thesis: ( not x9 in k + 1 or x9 in rng g ) assume A4: x9 in k + 1 ; ::_thesis: x9 in rng g k + 1 is Subset of NAT by Th8; then reconsider x = x9 as Element of NAT by A4; x < k + 1 by A4, NAT_1:44; then A5: x <= k by NAT_1:13; now__::_thesis:_x9_in_rng_g percases ( x < k or x = k ) by A5, XXREAL_0:1; supposeA6: x < k ; ::_thesis: x9 in rng g A7: rng f = k by A1, FUNCT_2:def_3; x in k by A6, NAT_1:44; then consider y being set such that A8: y in dom f and A9: f . y = x by A7, FUNCT_1:def_3; A10: dom g = n + 1 by FUNCT_2:def_1; ( n = 0 iff k = 0 ) by A1, Def1; then A11: dom f = n by FUNCT_2:def_1; n <= n + 1 by NAT_1:11; then A12: n c= n + 1 by NAT_1:39; f . y = g . y by A2, A8, FUNCT_1:47; hence x9 in rng g by A8, A9, A11, A12, A10, FUNCT_1:def_3; ::_thesis: verum end; supposeA13: x = k ; ::_thesis: x9 in rng g n < n + 1 by NAT_1:13; then A14: n in n + 1 by NAT_1:44; dom g = n + 1 by FUNCT_2:def_1; hence x9 in rng g by A3, A13, A14, FUNCT_1:def_3; ::_thesis: verum end; end; end; hence x9 in rng g ; ::_thesis: verum end; then k + 1 = rng g by XBOOLE_0:def_10; hence g is onto by FUNCT_2:def_3; ::_thesis: ( g is "increasing & g " {(g . n)} = {n} ) for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) by A1, A2, Th39; hence g is "increasing by Def1; ::_thesis: g " {(g . n)} = {n} thus g " {(g . n)} = {n} ::_thesis: verum proof assume g " {(g . n)} <> {n} ; ::_thesis: contradiction then consider m being Nat such that A15: m in g " {(g . n)} and A16: m <> n by Th35; g . m in {(g . n)} by A15, FUNCT_1:def_7; then A17: g . m = k by A3, TARSKI:def_1; m in dom g by A15, FUNCT_1:def_7; then m < n + 1 by NAT_1:44; then m <= n by NAT_1:13; then A18: m < n by A16, XXREAL_0:1; ( n = 0 iff k = 0 ) by A1, Def1; then dom f = n by FUNCT_2:def_1; then A19: m in dom f by A18, NAT_1:44; then A20: f . m in rng f by FUNCT_1:def_3; f . m = g . m by A2, A19, FUNCT_1:47; hence contradiction by A20, A17, NAT_1:44; ::_thesis: verum end; end; theorem Th41: :: STIRL2_1:41 for n, k being Nat for f being Function of n,k for g being Function of (n + 1),k st f is onto & f is "increasing & f = g | n & g . n < k holds ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) proof let n, k be Nat; ::_thesis: for f being Function of n,k for g being Function of (n + 1),k st f is onto & f is "increasing & f = g | n & g . n < k holds ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) let f be Function of n,k; ::_thesis: for g being Function of (n + 1),k st f is onto & f is "increasing & f = g | n & g . n < k holds ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) let g be Function of (n + 1),k; ::_thesis: ( f is onto & f is "increasing & f = g | n & g . n < k implies ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) ) assume that A1: ( f is onto & f is "increasing ) and A2: f = g | n and A3: g . n < k ; ::_thesis: ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) k = rng f by A1, FUNCT_2:def_3; then consider x being set such that A4: x in dom f and A5: f . x = g . n by A3, FUNCT_1:def_3; g . n = g . x by A2, A4, A5, FUNCT_1:47; then A6: g . x in {(g . n)} by TARSKI:def_1; k c= rng g proof n <= n + 1 by NAT_1:13; then A7: n c= n + 1 by NAT_1:39; ( n = 0 iff k = 0 ) by A1, Def1; then A8: dom f = n by FUNCT_2:def_1; let x9 be set ; :: according to TARSKI:def_3 ::_thesis: ( not x9 in k or x9 in rng g ) assume A9: x9 in k ; ::_thesis: x9 in rng g k is Subset of NAT by Th8; then reconsider x = x9 as Element of NAT by A9; rng f = k by A1, FUNCT_2:def_3; then consider y being set such that A10: y in dom f and A11: f . y = x by A9, FUNCT_1:def_3; A12: dom g = n + 1 by A3, FUNCT_2:def_1; f . y = g . y by A2, A10, FUNCT_1:47; hence x9 in rng g by A10, A11, A8, A7, A12, FUNCT_1:def_3; ::_thesis: verum end; then k = rng g by XBOOLE_0:def_10; hence g is onto by FUNCT_2:def_3; ::_thesis: ( g is "increasing & g " {(g . n)} <> {n} ) k = k + 0 ; then for i, j being Nat st i in rng g & j in rng g & i < j holds min* (g " {i}) < min* (g " {j}) by A1, A2, Th39; hence g is "increasing by A3, Def1; ::_thesis: g " {(g . n)} <> {n} n <= n + 1 by NAT_1:11; then A13: n c= n + 1 by NAT_1:39; A14: x in n by A4; then A15: x <> n ; dom g = n + 1 by A3, FUNCT_2:def_1; then x in g " {(g . n)} by A14, A13, A6, FUNCT_1:def_7; hence g " {(g . n)} <> {n} by A15, TARSKI:def_1; ::_thesis: verum end; Lm1: for k, n being Nat st k < n holds n \/ {k} = n proof let k, n be Nat; ::_thesis: ( k < n implies n \/ {k} = n ) assume k < n ; ::_thesis: n \/ {k} = n then k in n by NAT_1:44; then {k} c= n by ZFMISC_1:31; hence n \/ {k} = n by XBOOLE_1:12; ::_thesis: verum end; theorem Th42: :: STIRL2_1:42 for n, k being Nat holds card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } proof let n, k be Nat; ::_thesis: card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } set F1 = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } ; set F2 = { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; now__::_thesis:_card__{__f_where_f_is_Function_of_(n_+_1),(k_+_1)_:_(_f_is_onto_&_f_is_"increasing_&_f_"_{(f_._n)}_=_{n}_)__}__=_card__{__f_where_f_is_Function_of_n,k_:_(_f_is_onto_&_f_is_"increasing_)__}_ percases not ( not ( k = 0 & n <> 0 ) & k = 0 & not n = 0 ) ; supposeA1: ( k = 0 & n <> 0 ) ; ::_thesis: card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } A2: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } is empty proof assume not { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } is empty ; ::_thesis: contradiction then consider x being set such that A3: x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } by XBOOLE_0:def_1; consider f being Function of (n + 1),(k + 1) such that x = f and ( f is onto & f is "increasing ) and A4: f " {(f . n)} = {n} by A3; 0 in n + 1 by NAT_1:44; then A5: 0 in dom f by FUNCT_2:def_1; A6: 0 in {0} by TARSKI:def_1; A7: f . 0 = 0 by A1, CARD_1:49, TARSKI:def_1; f . n = 0 by A1, CARD_1:49, TARSKI:def_1; then 0 in {n} by A4, A7, A5, A6, FUNCT_1:def_7; hence contradiction by A1, TARSKI:def_1; ::_thesis: verum end; n block k = 0 by A1, Th31; hence card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } by A2; ::_thesis: verum end; supposeA8: ( k = 0 implies n = 0 ) ; ::_thesis: card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } defpred S1[ set , set , set ] means for i, j being Nat st i = $2 & j = $3 holds ex f being Function of i,j st ( f = $1 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ); A9: not n in n ; set FF2 = { f where f is Function of n,k : S1[f,n,k] } ; set FF1 = { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } ; A10: for f being Function of (n \/ {n}),(k \/ {k}) st f . n = k holds ( S1[f,n \/ {n},k \/ {k}] iff S1[f | n,n,k] ) proof let f9 be Function of (n \/ {n}),(k \/ {k}); ::_thesis: ( f9 . n = k implies ( S1[f9,n \/ {n},k \/ {k}] iff S1[f9 | n,n,k] ) ) assume A11: f9 . n = k ; ::_thesis: ( S1[f9,n \/ {n},k \/ {k}] iff S1[f9 | n,n,k] ) thus ( S1[f9,n \/ {n},k \/ {k}] implies S1[f9 | n,n,k] ) ::_thesis: ( S1[f9 | n,n,k] implies S1[f9,n \/ {n},k \/ {k}] ) proof n <= n + 1 by NAT_1:11; then A12: n c= n + 1 by NAT_1:39; A13: n + 1 = n \/ {n} by AFINSQ_1:2; A14: k + 1 = k \/ {k} by AFINSQ_1:2; assume S1[f9,n \/ {n},k \/ {k}] ; ::_thesis: S1[f9 | n,n,k] then consider f being Function of (n + 1),(k + 1) such that A15: f = f9 and A16: ( f is onto & f is "increasing ) and A17: ( n < n + 1 implies f " {(f . n)} = {n} ) by A13, A14; A18: rng (f | n) c= k by A16, A17, Th37, NAT_1:13; A19: dom (f | n) = (dom f) /\ n by RELAT_1:61; dom f = n + 1 by FUNCT_2:def_1; then dom (f | n) = n by A12, A19, XBOOLE_1:28; then reconsider fn = f | n as Function of n,k by A18, FUNCT_2:2; let i, j be Nat; ::_thesis: ( i = n & j = k implies ex f being Function of i,j st ( f = f9 | n & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) ) assume that A20: i = n and A21: j = k ; ::_thesis: ex f being Function of i,j st ( f = f9 | n & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) reconsider fi = fn as Function of i,j by A20, A21; ( fi is onto & fi is "increasing ) by A16, A17, A20, A21, Th37, NAT_1:13; hence ex f being Function of i,j st ( f = f9 | n & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) by A15, A20; ::_thesis: verum end; thus ( S1[f9 | n,n,k] implies S1[f9,n \/ {n},k \/ {k}] ) ::_thesis: verum proof n \/ {n} = n + 1 by AFINSQ_1:2; then reconsider f = f9 as Function of (n + 1),(k + 1) by AFINSQ_1:2; assume S1[f9 | n,n,k] ; ::_thesis: S1[f9,n \/ {n},k \/ {k}] then A22: ex fn being Function of n,k st ( fn = f9 | n & fn is onto & fn is "increasing & ( n < n implies fn " {(fn . n)} = {n} ) ) ; let i, j be Nat; ::_thesis: ( i = n \/ {n} & j = k \/ {k} implies ex f being Function of i,j st ( f = f9 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) ) assume that A23: i = n \/ {n} and A24: j = k \/ {k} ; ::_thesis: ex f being Function of i,j st ( f = f9 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) reconsider f1 = f as Function of i,j by A23, A24; A25: ( n < i implies f1 " {(f1 . n)} = {n} ) by A11, A22, Th40; A26: k + 1 = j by A24, AFINSQ_1:2; n + 1 = i by A23, AFINSQ_1:2; then ( f1 is onto & f1 is "increasing ) by A11, A22, A26, Th40; hence ex f being Function of i,j st ( f = f9 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) by A25; ::_thesis: verum end; end; A27: ( k is empty implies n is empty ) by A8; A28: card { f where f is Function of n,k : S1[f,n,k] } = card { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } from STIRL2_1:sch_4(A27, A9, A10); A29: { f where f is Function of n,k : ( f is onto & f is "increasing ) } c= { f where f is Function of n,k : S1[f,n,k] } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } or x in { f where f is Function of n,k : S1[f,n,k] } ) assume x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; ::_thesis: x in { f where f is Function of n,k : S1[f,n,k] } then A30: ex f being Function of n,k st ( x = f & f is onto & f is "increasing ) ; then S1[x,n,k] ; hence x in { f where f is Function of n,k : S1[f,n,k] } by A30; ::_thesis: verum end; A31: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } c= { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } or x in { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } ) assume x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } ; ::_thesis: x in { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } then consider f being Function of (n + 1),(k + 1) such that A32: f = x and A33: ( f is onto & f is "increasing ) and A34: f " {(f . n)} = {n} ; A35: rng (f | n) c= k by A33, A34, Th37; A36: S1[f,n \/ {n},k \/ {k}] proof let i, j be Nat; ::_thesis: ( i = n \/ {n} & j = k \/ {k} implies ex f being Function of i,j st ( f = f & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) ) assume that A37: i = n \/ {n} and A38: j = k \/ {k} ; ::_thesis: ex f being Function of i,j st ( f = f & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) A39: j = k + 1 by A38, AFINSQ_1:2; i = n + 1 by A37, AFINSQ_1:2; hence ex f being Function of i,j st ( f = f & f is onto & f is "increasing & ( n < i implies f " {(f . n)} = {n} ) ) by A33, A34, A39; ::_thesis: verum end; A40: k + 1 = k \/ {k} by AFINSQ_1:2; A41: n + 1 = n \/ {n} by AFINSQ_1:2; f . n = k by A33, A34, Th34; hence x in { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } by A32, A36, A35, A41, A40; ::_thesis: verum end; A42: { f where f is Function of n,k : S1[f,n,k] } c= { f where f is Function of n,k : ( f is onto & f is "increasing ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of n,k : S1[f,n,k] } or x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } ) assume x in { f where f is Function of n,k : S1[f,n,k] } ; ::_thesis: x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } then consider f being Function of n,k such that A43: x = f and A44: S1[f,n,k] ; ex g being Function of n,k st ( g = f & g is onto & g is "increasing & ( n < n implies g " {(g . n)} = {n} ) ) by A44; hence x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } by A43; ::_thesis: verum end; { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } c= { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } or x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } ) assume x in { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } ; ::_thesis: x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } then consider f being Function of (n \/ {n}),(k \/ {k}) such that A45: x = f and A46: S1[f,n \/ {n},k \/ {k}] and rng (f | n) c= k and f . n = k ; A47: k + 1 = k \/ {k} by AFINSQ_1:2; n + 1 = n \/ {n} by AFINSQ_1:2; then ex f9 being Function of (n + 1),(k + 1) st ( f = f9 & f9 is onto & f9 is "increasing & ( n < n + 1 implies f9 " {(f9 . n)} = {n} ) ) by A46, A47; hence x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } by A45, NAT_1:13; ::_thesis: verum end; then { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = { f where f is Function of (n \/ {n}),(k \/ {k}) : ( S1[f,n \/ {n},k \/ {k}] & rng (f | n) c= k & f . n = k ) } by A31, XBOOLE_0:def_10; hence card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } by A28, A29, A42, XBOOLE_0:def_10; ::_thesis: verum end; end; end; hence card { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; ::_thesis: verum end; theorem Th43: :: STIRL2_1:43 for k, n, l being Nat st l < k holds card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } proof let k, n, l be Nat; ::_thesis: ( l < k implies card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } ) assume A1: l < k ; ::_thesis: card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } set F2 = { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; set F1 = { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } ; now__::_thesis:_card__{__f_where_f_is_Function_of_(n_+_1),k_:_(_f_is_onto_&_f_is_"increasing_&_f_"_{(f_._n)}_<>_{n}_&_f_._n_=_l_)__}__=_card__{__f_where_f_is_Function_of_n,k_:_(_f_is_onto_&_f_is_"increasing_)__}_ percases not ( not ( k = 0 & n <> 0 ) & k = 0 & not n = 0 ) ; suppose ( k = 0 & n <> 0 ) ; ::_thesis: card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } hence card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } by A1; ::_thesis: verum end; supposeA2: ( k = 0 implies n = 0 ) ; ::_thesis: card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } defpred S1[ set , set , set ] means for i, j being Nat st i = $2 & j = $3 holds ex f being Function of i,j st ( f = $1 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ); A3: not n in n ; set FF2 = { f where f is Function of n,k : S1[f,n,k] } ; set FF1 = { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } ; A4: for f being Function of (n \/ {n}),(k \/ {l}) st f . n = l holds ( S1[f,n \/ {n},k \/ {l}] iff S1[f | n,n,k] ) proof let f9 be Function of (n \/ {n}),(k \/ {l}); ::_thesis: ( f9 . n = l implies ( S1[f9,n \/ {n},k \/ {l}] iff S1[f9 | n,n,k] ) ) assume A5: f9 . n = l ; ::_thesis: ( S1[f9,n \/ {n},k \/ {l}] iff S1[f9 | n,n,k] ) thus ( S1[f9,n \/ {n},k \/ {l}] implies S1[f9 | n,n,k] ) ::_thesis: ( S1[f9 | n,n,k] implies S1[f9,n \/ {n},k \/ {l}] ) proof n <= n + 1 by NAT_1:13; then A6: n c= n + 1 by NAT_1:39; assume A7: S1[f9,n \/ {n},k \/ {l}] ; ::_thesis: S1[f9 | n,n,k] A8: n + 1 = n \/ {n} by AFINSQ_1:2; k = k \/ {l} by A1, Lm1; then consider f being Function of (n + 1),k such that A9: f = f9 and A10: ( f is onto & f is "increasing ) and A11: ( n < n + 1 implies f " {(f . n)} <> {n} ) by A7, A8; A12: dom (f | n) = (dom f) /\ n by RELAT_1:61; A13: rng (f | n) c= k ; dom f = n + 1 by A1, FUNCT_2:def_1; then dom (f | n) = n by A6, A12, XBOOLE_1:28; then reconsider fn = f | n as Function of n,k by A13, FUNCT_2:2; let i, j be Nat; ::_thesis: ( i = n & j = k implies ex f being Function of i,j st ( f = f9 | n & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) ) assume that A14: i = n and A15: j = k ; ::_thesis: ex f being Function of i,j st ( f = f9 | n & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) reconsider fi = fn as Function of i,j by A14, A15; ( fi is onto & fi is "increasing ) by A10, A11, A14, A15, Th38, NAT_1:13; hence ex f being Function of i,j st ( f = f9 | n & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) by A9, A14; ::_thesis: verum end; thus ( S1[f9 | n,n,k] implies S1[f9,n \/ {n},k \/ {l}] ) ::_thesis: verum proof n \/ {n} = n + 1 by AFINSQ_1:2; then reconsider f = f9 as Function of (n + 1),k by A1, Lm1; assume S1[f9 | n,n,k] ; ::_thesis: S1[f9,n \/ {n},k \/ {l}] then A16: ex fn being Function of n,k st ( fn = f9 | n & fn is onto & fn is "increasing & ( n < n implies fn " {(fn . n)} <> {n} ) ) ; let i, j be Nat; ::_thesis: ( i = n \/ {n} & j = k \/ {l} implies ex f being Function of i,j st ( f = f9 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) ) assume that A17: i = n \/ {n} and A18: j = k \/ {l} ; ::_thesis: ex f being Function of i,j st ( f = f9 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) reconsider f1 = f as Function of i,j by A17, A18; A19: ( n < i implies f1 " {(f1 . n)} <> {n} ) by A1, A5, A16, Th41; A20: n + 1 = i by A17, AFINSQ_1:2; k = j by A1, A18, Lm1; then ( f1 is onto & f1 is "increasing ) by A1, A5, A16, A20, Th41; hence ex f being Function of i,j st ( f = f9 & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) by A19; ::_thesis: verum end; end; A21: ( k is empty implies n is empty ) by A2; A22: card { f where f is Function of n,k : S1[f,n,k] } = card { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } from STIRL2_1:sch_4(A21, A3, A4); A23: { f where f is Function of n,k : ( f is onto & f is "increasing ) } c= { f where f is Function of n,k : S1[f,n,k] } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } or x in { f where f is Function of n,k : S1[f,n,k] } ) assume x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; ::_thesis: x in { f where f is Function of n,k : S1[f,n,k] } then A24: ex f being Function of n,k st ( x = f & f is onto & f is "increasing ) ; then S1[x,n,k] ; hence x in { f where f is Function of n,k : S1[f,n,k] } by A24; ::_thesis: verum end; A25: { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } c= { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } or x in { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } ) assume x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } ; ::_thesis: x in { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } then consider f being Function of (n + 1),k such that A26: f = x and A27: ( f is onto & f is "increasing ) and A28: f " {(f . n)} <> {n} and A29: f . n = l ; A30: S1[f,n \/ {n},k \/ {l}] proof let i, j be Nat; ::_thesis: ( i = n \/ {n} & j = k \/ {l} implies ex f being Function of i,j st ( f = f & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) ) assume that A31: i = n \/ {n} and A32: j = k \/ {l} ; ::_thesis: ex f being Function of i,j st ( f = f & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) A33: i = n + 1 by A31, AFINSQ_1:2; j = k by A1, A32, Lm1; hence ex f being Function of i,j st ( f = f & f is onto & f is "increasing & ( n < i implies f " {(f . n)} <> {n} ) ) by A27, A28, A33; ::_thesis: verum end; A34: k = k \/ {l} by A1, Lm1; A35: n + 1 = n \/ {n} by AFINSQ_1:2; rng (f | n) c= k ; hence x in { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } by A26, A29, A30, A35, A34; ::_thesis: verum end; A36: { f where f is Function of n,k : S1[f,n,k] } c= { f where f is Function of n,k : ( f is onto & f is "increasing ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of n,k : S1[f,n,k] } or x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } ) assume x in { f where f is Function of n,k : S1[f,n,k] } ; ::_thesis: x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } then consider f being Function of n,k such that A37: x = f and A38: S1[f,n,k] ; ex g being Function of n,k st ( g = f & g is onto & g is "increasing & ( n < n implies g " {(g . n)} <> {n} ) ) by A38; hence x in { f where f is Function of n,k : ( f is onto & f is "increasing ) } by A37; ::_thesis: verum end; { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } c= { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } proof A39: n + 1 = n \/ {n} by AFINSQ_1:2; let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } or x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } ) assume x in { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } ; ::_thesis: x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } then consider f being Function of (n \/ {n}),(k \/ {l}) such that A40: x = f and A41: S1[f,n \/ {n},k \/ {l}] and rng (f | n) c= k and A42: f . n = l ; k = k \/ {l} by A1, Lm1; then ex f9 being Function of (n + 1),k st ( f = f9 & f9 is onto & f9 is "increasing & ( n < n + 1 implies f9 " {(f9 . n)} <> {n} ) ) by A41, A39; hence x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } by A40, A42, NAT_1:13; ::_thesis: verum end; then { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = { f where f is Function of (n \/ {n}),(k \/ {l}) : ( S1[f,n \/ {n},k \/ {l}] & rng (f | n) c= k & f . n = l ) } by A25, XBOOLE_0:def_10; hence card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } by A22, A23, A36, XBOOLE_0:def_10; ::_thesis: verum end; end; end; hence card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} & f . n = l ) } = card { f where f is Function of n,k : ( f is onto & f is "increasing ) } ; ::_thesis: verum end; theorem Th44: :: STIRL2_1:44 for f being Function for n being Nat holds (union (rng (f | n))) \/ (f . n) = union (rng (f | (n + 1))) proof let f be Function; ::_thesis: for n being Nat holds (union (rng (f | n))) \/ (f . n) = union (rng (f | (n + 1))) let n be Nat; ::_thesis: (union (rng (f | n))) \/ (f . n) = union (rng (f | (n + 1))) thus (union (rng (f | n))) \/ (f . n) c= union (rng (f | (n + 1))) :: according to XBOOLE_0:def_10 ::_thesis: union (rng (f | (n + 1))) c= (union (rng (f | n))) \/ (f . n) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (union (rng (f | n))) \/ (f . n) or x in union (rng (f | (n + 1))) ) assume A1: x in (union (rng (f | n))) \/ (f . n) ; ::_thesis: x in union (rng (f | (n + 1))) now__::_thesis:_x_in_union_(rng_(f_|_(n_+_1))) percases ( x in union (rng (f | n)) or x in f . n ) by A1, XBOOLE_0:def_3; suppose x in union (rng (f | n)) ; ::_thesis: x in union (rng (f | (n + 1))) then consider Y being set such that A2: x in Y and A3: Y in rng (f | n) by TARSKI:def_4; consider X being set such that A4: X in dom (f | n) and A5: (f | n) . X = Y by A3, FUNCT_1:def_3; A6: (f | n) . X = f . X by A4, FUNCT_1:47; n <= n + 1 by NAT_1:11; then n c= n + 1 by NAT_1:39; then A7: (dom f) /\ n c= (dom f) /\ (n + 1) by XBOOLE_1:26; X in (dom f) /\ n by A4, RELAT_1:61; then X in (dom f) /\ (n + 1) by A7; then A8: X in dom (f | (n + 1)) by RELAT_1:61; then A9: (f | (n + 1)) . X = f . X by FUNCT_1:47; (f | (n + 1)) . X in rng (f | (n + 1)) by A8, FUNCT_1:def_3; hence x in union (rng (f | (n + 1))) by A2, A5, A9, A6, TARSKI:def_4; ::_thesis: verum end; supposeA10: x in f . n ; ::_thesis: x in union (rng (f | (n + 1))) n < n + 1 by NAT_1:13; then A11: n in n + 1 by NAT_1:44; n in dom f by A10, FUNCT_1:def_2; then n in (dom f) /\ (n + 1) by A11, XBOOLE_0:def_4; then A12: n in dom (f | (n + 1)) by RELAT_1:61; then A13: (f | (n + 1)) . n = f . n by FUNCT_1:47; (f | (n + 1)) . n in rng (f | (n + 1)) by A12, FUNCT_1:def_3; hence x in union (rng (f | (n + 1))) by A10, A13, TARSKI:def_4; ::_thesis: verum end; end; end; hence x in union (rng (f | (n + 1))) ; ::_thesis: verum end; thus union (rng (f | (n + 1))) c= (union (rng (f | n))) \/ (f . n) ::_thesis: verum proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in union (rng (f | (n + 1))) or x in (union (rng (f | n))) \/ (f . n) ) assume x in union (rng (f | (n + 1))) ; ::_thesis: x in (union (rng (f | n))) \/ (f . n) then consider Y being set such that A14: x in Y and A15: Y in rng (f | (n + 1)) by TARSKI:def_4; consider X being set such that A16: X in dom (f | (n + 1)) and A17: (f | (n + 1)) . X = Y by A15, FUNCT_1:def_3; A18: X in (dom f) /\ (n + 1) by A16, RELAT_1:61; then A19: X in n + 1 by XBOOLE_0:def_4; A20: X in dom f by A18, XBOOLE_0:def_4; n + 1 is Subset of NAT by Th8; then reconsider X = X as Element of NAT by A19; X < n + 1 by A19, NAT_1:44; then A21: X <= n by NAT_1:13; now__::_thesis:_x_in_(union_(rng_(f_|_n)))_\/_(f_._n) percases ( X < n or X = n ) by A21, XXREAL_0:1; suppose X < n ; ::_thesis: x in (union (rng (f | n))) \/ (f . n) then X in n by NAT_1:44; then X in (dom f) /\ n by A20, XBOOLE_0:def_4; then A22: X in dom (f | n) by RELAT_1:61; then A23: (f | n) . X in rng (f | n) by FUNCT_1:def_3; A24: f . X = (f | (n + 1)) . X by A16, FUNCT_1:47; (f | n) . X = f . X by A22, FUNCT_1:47; then x in union (rng (f | n)) by A14, A17, A24, A23, TARSKI:def_4; hence x in (union (rng (f | n))) \/ (f . n) by XBOOLE_0:def_3; ::_thesis: verum end; supposeA25: X = n ; ::_thesis: x in (union (rng (f | n))) \/ (f . n) f . X = (f | (n + 1)) . X by A16, FUNCT_1:47; hence x in (union (rng (f | n))) \/ (f . n) by A14, A17, A25, XBOOLE_0:def_3; ::_thesis: verum end; end; end; hence x in (union (rng (f | n))) \/ (f . n) ; ::_thesis: verum end; end; scheme :: STIRL2_1:sch 5 Sch6{ F1() -> non empty set , F2() -> Nat, P1[ set , set ] } : ex p being XFinSequence of F1() st ( dom p = F2() & ( for k being Nat st k in F2() holds P1[k,p . k] ) ) provided A1: for k being Nat st k in F2() holds ex x being Element of F1() st P1[k,x] proof A2: for k being set st k in F2() holds ex x being set st ( x in F1() & P1[k,x] ) proof let k be set ; ::_thesis: ( k in F2() implies ex x being set st ( x in F1() & P1[k,x] ) ) assume A3: k in F2() ; ::_thesis: ex x being set st ( x in F1() & P1[k,x] ) F2() is Subset of NAT by Th8; then reconsider k9 = k as Element of NAT by A3; ex x being Element of F1() st P1[k9,x] by A1, A3; hence ex x being set st ( x in F1() & P1[k,x] ) ; ::_thesis: verum end; consider f being Function of F2(),F1() such that A4: for x being set st x in F2() holds P1[x,f . x] from FUNCT_2:sch_1(A2); dom f = F2() by FUNCT_2:def_1; then reconsider p = f as XFinSequence of F1() by AFINSQ_1:5; take p ; ::_thesis: ( dom p = F2() & ( for k being Nat st k in F2() holds P1[k,p . k] ) ) thus ( dom p = F2() & ( for k being Nat st k in F2() holds P1[k,p . k] ) ) by A4, FUNCT_2:def_1; ::_thesis: verum end; Lm2: now__::_thesis:_for_D_being_non_empty_set_ for_F_being_XFinSequence_of_D_st_(_for_i_being_Nat_st_i_in_dom_F_holds_ F_._i_is_finite_)_&_(_for_i,_j_being_Nat_st_i_in_dom_F_&_j_in_dom_F_&_i_<>_j_holds_ F_._i_misses_F_._j_)_holds_ ex_CardF_being_XFinSequence_of_NAT_st_ (_dom_CardF_=_dom_F_&_(_for_i_being_Nat_st_i_in_dom_CardF_holds_ CardF_._i_=_card_(F_._i)_)_&_card_(union_(rng_F))_=_Sum_CardF_) let D be non empty set ; ::_thesis: for F being XFinSequence of D st ( for i being Nat st i in dom F holds F . i is finite ) & ( for i, j being Nat st i in dom F & j in dom F & i <> j holds F . i misses F . j ) holds ex CardF being XFinSequence of NAT st ( dom CardF = dom F & ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) let F be XFinSequence of D; ::_thesis: ( ( for i being Nat st i in dom F holds F . i is finite ) & ( for i, j being Nat st i in dom F & j in dom F & i <> j holds F . i misses F . j ) implies ex CardF being XFinSequence of NAT st ( dom CardF = dom F & ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) ) assume that A1: for i being Nat st i in dom F holds F . i is finite and A2: for i, j being Nat st i in dom F & j in dom F & i <> j holds F . i misses F . j ; ::_thesis: ex CardF being XFinSequence of NAT st ( dom CardF = dom F & ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) thus ex CardF being XFinSequence of NAT st ( dom CardF = dom F & ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) ::_thesis: verum proof defpred S1[ Nat, set ] means $2 = card (F . $1); A3: for k being Nat st k in len F holds ex x being Element of NAT st S1[k,x] proof let k be Nat; ::_thesis: ( k in len F implies ex x being Element of NAT st S1[k,x] ) assume k in len F ; ::_thesis: ex x being Element of NAT st S1[k,x] then consider m being Nat such that A4: F . k,m are_equipotent by A1, CARD_1:43; card (F . k) = card m by A4, CARD_1:5; hence ex x being Element of NAT st S1[k,x] ; ::_thesis: verum end; consider CardF being XFinSequence of NAT such that A5: ( dom CardF = len F & ( for k being Nat st k in len F holds S1[k,CardF . k] ) ) from STIRL2_1:sch_5(A3); take CardF ; ::_thesis: ( dom CardF = dom F & ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) thus dom CardF = dom F by A5; ::_thesis: ( ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) thus for i being Nat st i in dom CardF holds CardF . i = card (F . i) by A5; ::_thesis: card (union (rng F)) = Sum CardF A6: addnat "**" CardF = Sum CardF by AFINSQ_2:51; percases ( len CardF = 0 or len CardF <> 0 ) ; supposeA7: len CardF = 0 ; ::_thesis: card (union (rng F)) = Sum CardF then union (rng F) is empty by A5, RELAT_1:42, ZFMISC_1:2; hence card (union (rng F)) = Sum CardF by A7, A6, AFINSQ_2:def_8, BINOP_2:5; ::_thesis: verum end; supposeA8: len CardF <> 0 ; ::_thesis: card (union (rng F)) = Sum CardF then consider f being Function of NAT,NAT such that A9: f . 0 = CardF . 0 and A10: for n being Nat st n + 1 < len CardF holds f . (n + 1) = addnat . ((f . n),(CardF . (n + 1))) and A11: addnat "**" CardF = f . ((len CardF) - 1) by AFINSQ_2:def_8; defpred S2[ Nat] means ( $1 < len CardF implies ( card (union (rng (F | ($1 + 1)))) = f . $1 & union (rng (F | ($1 + 1))) is finite ) ); A12: for k being Nat st S2[k] holds S2[k + 1] proof let k be Nat; ::_thesis: ( S2[k] implies S2[k + 1] ) assume A13: S2[k] ; ::_thesis: S2[k + 1] set k1 = k + 1; set Fk1 = F | (k + 1); set rFk1 = rng (F | (k + 1)); assume A14: k + 1 < len CardF ; ::_thesis: ( card (union (rng (F | ((k + 1) + 1)))) = f . (k + 1) & union (rng (F | ((k + 1) + 1))) is finite ) reconsider urFk1 = union (rng (F | (k + 1))) as finite set by A13, A14, NAT_1:13; A15: f . (k + 1) = addnat . ((f . k),(CardF . (k + 1))) by A10, A14; A16: union (rng (F | (k + 1))) misses F . (k + 1) proof assume union (rng (F | (k + 1))) meets F . (k + 1) ; ::_thesis: contradiction then consider x being set such that A17: x in (union (rng (F | (k + 1)))) /\ (F . (k + 1)) by XBOOLE_0:4; A18: x in F . (k + 1) by A17, XBOOLE_0:def_4; A19: k + 1 in dom F by A5, A14, NAT_1:44; x in union (rng (F | (k + 1))) by A17, XBOOLE_0:def_4; then consider Y being set such that A20: x in Y and A21: Y in rng (F | (k + 1)) by TARSKI:def_4; consider X being set such that A22: X in dom (F | (k + 1)) and A23: (F | (k + 1)) . X = Y by A21, FUNCT_1:def_3; reconsider X = X as Element of NAT by A22; A24: (F | (k + 1)) . X = F . X by A22, FUNCT_1:47; A25: X in (dom F) /\ (k + 1) by A22, RELAT_1:61; then X in k + 1 by XBOOLE_0:def_4; then A26: X <> k + 1 ; X in dom F by A25, XBOOLE_0:def_4; then Y misses F . (k + 1) by A2, A23, A19, A26, A24; hence contradiction by A20, A18, XBOOLE_0:3; ::_thesis: verum end; k + 1 in dom F by A5, A14, NAT_1:44; then reconsider Fk1 = F . (k + 1) as finite set by A1; k + 1 in len F by A5, A14, NAT_1:44; then card Fk1 = CardF . (k + 1) by A5; then A27: f . (k + 1) = (f . k) + (card Fk1) by A15, BINOP_2:def_23; card (urFk1 \/ Fk1) = (f . k) + (card Fk1) by A13, A14, A16, CARD_2:40, NAT_1:13; hence ( card (union (rng (F | ((k + 1) + 1)))) = f . (k + 1) & union (rng (F | ((k + 1) + 1))) is finite ) by A27, Th44; ::_thesis: verum end; reconsider C1 = (len CardF) - 1 as Element of NAT by A8, NAT_1:20; A28: C1 < C1 + 1 by NAT_1:13; A29: F | (len CardF) = F by A5, RELAT_1:68; A30: S2[ 0 ] proof assume 0 < len CardF ; ::_thesis: ( card (union (rng (F | (0 + 1)))) = f . 0 & union (rng (F | (0 + 1))) is finite ) A31: union (rng (F | (0 + 1))) = (union (rng (F | 0))) \/ (F . 0) by Th44; 0 in len CardF by A8, NAT_1:44; hence ( card (union (rng (F | (0 + 1)))) = f . 0 & union (rng (F | (0 + 1))) is finite ) by A1, A5, A9, A31, ZFMISC_1:2; ::_thesis: verum end; for k being Nat holds S2[k] from NAT_1:sch_2(A30, A12); hence card (union (rng F)) = Sum CardF by A11, A28, A29, A6; ::_thesis: verum end; end; end; end; scheme :: STIRL2_1:sch 6 Sch8{ F1() -> finite set , F2() -> finite set , F3() -> set , P1[ set ], F4() -> Function of (card F2()),F2() } : ex F being XFinSequence of NAT st ( dom F = card F2() & card { g where g is Function of F1(),F2() : P1[g] } = Sum F & ( for i being Nat st i in dom F holds F . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } ) ) provided A1: ( F4() is onto & F4() is one-to-one ) and A2: not F2() is empty and A3: F3() in F1() proof defpred S1[ Nat, set ] means $2 = { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . $1 ) } ; consider n being Nat such that A4: F2(),n are_equipotent by CARD_1:43; reconsider n = n as Element of NAT by ORDINAL1:def_12; A5: for k being Nat st k in n holds ex x being Subset of (Funcs (F1(),F2())) st S1[k,x] proof let k be Nat; ::_thesis: ( k in n implies ex x being Subset of (Funcs (F1(),F2())) st S1[k,x] ) assume k in n ; ::_thesis: ex x being Subset of (Funcs (F1(),F2())) st S1[k,x] set F0 = { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . k ) } ; { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . k ) } c= Funcs (F1(),F2()) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . k ) } or x in Funcs (F1(),F2()) ) assume x in { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . k ) } ; ::_thesis: x in Funcs (F1(),F2()) then ex g being Function of F1(),F2() st ( x = g & P1[g] & g . F3() = F4() . k ) ; hence x in Funcs (F1(),F2()) by A2, FUNCT_2:8; ::_thesis: verum end; hence ex x being Subset of (Funcs (F1(),F2())) st S1[k,x] ; ::_thesis: verum end; consider F being XFinSequence of bool (Funcs (F1(),F2())) such that A6: ( dom F = n & ( for k being Nat st k in n holds S1[k,F . k] ) ) from STIRL2_1:sch_5(A5); A7: for i, j being Nat st i in dom F & j in dom F & i <> j holds F . i misses F . j proof let i, j be Nat; ::_thesis: ( i in dom F & j in dom F & i <> j implies F . i misses F . j ) assume that A8: i in dom F and A9: j in dom F and A10: i <> j ; ::_thesis: F . i misses F . j assume F . i meets F . j ; ::_thesis: contradiction then consider x being set such that A11: x in (F . i) /\ (F . j) by XBOOLE_0:4; x in F . i by A11, XBOOLE_0:def_4; then x in { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } by A6, A8; then A12: ex gi being Function of F1(),F2() st ( x = gi & P1[gi] & gi . F3() = F4() . i ) ; A13: card F2() = card n by A4, CARD_1:5; A14: card n = n by CARD_1:def_2; x in F . j by A11, XBOOLE_0:def_4; then x in { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . j ) } by A6, A9; then A15: ex gj being Function of F1(),F2() st ( x = gj & P1[gj] & gj . F3() = F4() . j ) ; dom F4() = card F2() by A2, FUNCT_2:def_1; hence contradiction by A1, A6, A8, A9, A10, A12, A15, A13, A14, FUNCT_1:def_4; ::_thesis: verum end; A16: for i being Nat st i in dom F holds F . i is finite proof let i be Nat; ::_thesis: ( i in dom F implies F . i is finite ) assume i in dom F ; ::_thesis: F . i is finite then A17: F . i in rng F by FUNCT_1:def_3; A18: Funcs (F1(),F2()) is finite by FRAENKEL:6; thus F . i is finite by A17, A18; ::_thesis: verum end; consider CardF being XFinSequence of NAT such that A19: dom CardF = dom F and A20: for i being Nat st i in dom CardF holds CardF . i = card (F . i) and A21: card (union (rng F)) = Sum CardF by Lm2, A16, A7; take CardF ; ::_thesis: ( dom CardF = card F2() & card { g where g is Function of F1(),F2() : P1[g] } = Sum CardF & ( for i being Nat st i in dom CardF holds CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } ) ) thus dom CardF = card F2() by A4, A6, A19, CARD_1:def_2; ::_thesis: ( card { g where g is Function of F1(),F2() : P1[g] } = Sum CardF & ( for i being Nat st i in dom CardF holds CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } ) ) thus card { g where g is Function of F1(),F2() : P1[g] } = Sum CardF ::_thesis: for i being Nat st i in dom CardF holds CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } proof set G = { g where g is Function of F1(),F2() : P1[g] } ; A22: { g where g is Function of F1(),F2() : P1[g] } c= union (rng F) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of F1(),F2() : P1[g] } or x in union (rng F) ) assume x in { g where g is Function of F1(),F2() : P1[g] } ; ::_thesis: x in union (rng F) then consider g being Function of F1(),F2() such that A23: x = g and A24: P1[g] ; A25: card n = n by CARD_1:def_2; A26: rng F4() = F2() by A1, FUNCT_2:def_3; A27: card F2() = card n by A4, CARD_1:5; dom g = F1() by A2, FUNCT_2:def_1; then g . F3() in rng g by A3, FUNCT_1:def_3; then consider y being set such that A28: y in dom F4() and A29: F4() . y = g . F3() by A26, FUNCT_1:def_3; F . y = { g1 where g1 is Function of F1(),F2() : ( P1[g1] & g1 . F3() = F4() . y ) } by A6, A27, A25, A28; then A30: g in F . y by A24, A29; F . y in rng F by A6, A28, A27, A25, FUNCT_1:def_3; hence x in union (rng F) by A23, A30, TARSKI:def_4; ::_thesis: verum end; union (rng F) c= { g where g is Function of F1(),F2() : P1[g] } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in union (rng F) or x in { g where g is Function of F1(),F2() : P1[g] } ) assume x in union (rng F) ; ::_thesis: x in { g where g is Function of F1(),F2() : P1[g] } then consider Y being set such that A31: x in Y and A32: Y in rng F by TARSKI:def_4; consider X being set such that A33: X in dom F and A34: F . X = Y by A32, FUNCT_1:def_3; Y = { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . X ) } by A6, A33, A34; then ex gX being Function of F1(),F2() st ( x = gX & P1[gX] & gX . F3() = F4() . X ) by A31; hence x in { g where g is Function of F1(),F2() : P1[g] } ; ::_thesis: verum end; hence card { g where g is Function of F1(),F2() : P1[g] } = Sum CardF by A21, A22, XBOOLE_0:def_10; ::_thesis: verum end; for i being Nat st i in dom CardF holds CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } proof let i be Nat; ::_thesis: ( i in dom CardF implies CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } ) assume A35: i in dom CardF ; ::_thesis: CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } F . i = { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } by A6, A19, A35; hence CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } by A20, A35; ::_thesis: verum end; hence for i being Nat st i in dom CardF holds CardF . i = card { g where g is Function of F1(),F2() : ( P1[g] & g . F3() = F4() . i ) } ; ::_thesis: verum end; theorem Th45: :: STIRL2_1:45 for k, n being Nat holds k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } proof let k, n be Nat; ::_thesis: k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } now__::_thesis:_k_*_(n_block_k)_=_card__{__f_where_f_is_Function_of_(n_+_1),k_:_(_f_is_onto_&_f_is_"increasing_&_f_"_{(f_._n)}_<>_{n}_)__}_ percases ( k = 0 or k > 0 ) ; supposeA1: k = 0 ; ::_thesis: k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } set F1 = { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } ; set F = { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; A2: { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } c= { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } or x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } ) assume x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; ::_thesis: x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } then ex f being Function of (n + 1),k st ( x = f & f is onto & f is "increasing & f " {(f . n)} <> {n} ) ; hence x in { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } ; ::_thesis: verum end; card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } = (n + 1) block k ; then { f where f is Function of (n + 1),k : ( f is onto & f is "increasing ) } is empty by A1, Th31; hence k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } by A1, A2; ::_thesis: verum end; suppose k > 0 ; ::_thesis: k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } then A3: not k is empty ; set G1 = { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } ; defpred S1[ set ] means ex f being Function of (n + 1),k st ( f = $1 & f is onto & f is "increasing & f " {(f . n)} <> {n} ); n < n + 1 by NAT_1:13; then A4: n in n + 1 by NAT_1:44; card k,k are_equipotent by CARD_1:def_2; then consider f being Function such that A5: f is one-to-one and A6: dom f = card k and A7: rng f = k by WELLORD2:def_4; reconsider f = f as Function of (card k),k by A6, A7, FUNCT_2:1; A8: ( f is onto & f is one-to-one ) by A5, A7, FUNCT_2:def_3; consider F being XFinSequence of NAT such that A9: dom F = card k and A10: card { g where g is Function of (n + 1),k : S1[g] } = Sum F and A11: for i being Nat st i in dom F holds F . i = card { g where g is Function of (n + 1),k : ( S1[g] & g . n = f . i ) } from STIRL2_1:sch_6(A8, A3, A4); A12: for i being Nat st i in dom F holds F . i = n block k proof set F2 = { g where g is Function of n,k : ( g is onto & g is "increasing ) } ; let i be Nat; ::_thesis: ( i in dom F implies F . i = n block k ) assume A13: i in dom F ; ::_thesis: F . i = n block k A14: f . i in rng f by A6, A9, A13, FUNCT_1:def_3; k is Subset of NAT by Th8; then reconsider fi = f . i as Element of NAT by A7, A14; A15: fi < k by A14, NAT_1:44; set F1 = { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } ; set F = { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } ; A16: { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } c= { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } or x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } ) assume x in { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } ; ::_thesis: x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } then ex g being Function of (n + 1),k st ( x = g & S1[g] & g . n = fi ) ; hence x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } ; ::_thesis: verum end; { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } c= { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } or x in { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } ) assume x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } ; ::_thesis: x in { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } then ex g being Function of (n + 1),k st ( x = g & g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) ; hence x in { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } ; ::_thesis: verum end; then { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} & g . n = fi ) } = { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } by A16, XBOOLE_0:def_10; then card { g where g is Function of (n + 1),k : ( S1[g] & g . n = fi ) } = card { g where g is Function of n,k : ( g is onto & g is "increasing ) } by A15, Th43; hence F . i = n block k by A11, A13; ::_thesis: verum end; then for i being Nat st i in dom F holds F . i <= n block k ; then A17: Sum F <= (len F) * (n block k) by AFINSQ_2:59; set G = { g where g is Function of (n + 1),k : S1[g] } ; A18: { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } c= { g where g is Function of (n + 1),k : S1[g] } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } or x in { g where g is Function of (n + 1),k : S1[g] } ) assume x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } ; ::_thesis: x in { g where g is Function of (n + 1),k : S1[g] } then ex g being Function of (n + 1),k st ( x = g & g is onto & g is "increasing & g " {(g . n)} <> {n} ) ; hence x in { g where g is Function of (n + 1),k : S1[g] } ; ::_thesis: verum end; A19: { g where g is Function of (n + 1),k : S1[g] } c= { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { g where g is Function of (n + 1),k : S1[g] } or x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } ) assume x in { g where g is Function of (n + 1),k : S1[g] } ; ::_thesis: x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } then ex g being Function of (n + 1),k st ( x = g & S1[g] ) ; hence x in { g where g is Function of (n + 1),k : ( g is onto & g is "increasing & g " {(g . n)} <> {n} ) } ; ::_thesis: verum end; for i being Nat st i in dom F holds F . i >= n block k by A12; then A20: Sum F >= (len F) * (n block k) by AFINSQ_2:60; card k = k by CARD_1:def_2; then Sum F = k * (n block k) by A9, A17, A20, XXREAL_0:1; hence k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } by A10, A18, A19, XBOOLE_0:def_10; ::_thesis: verum end; end; end; hence k * (n block k) = card { f where f is Function of (n + 1),k : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; ::_thesis: verum end; theorem Th46: :: STIRL2_1:46 for n, k being Nat holds (n + 1) block (k + 1) = ((k + 1) * (n block (k + 1))) + (n block k) proof let n, k be Nat; ::_thesis: (n + 1) block (k + 1) = ((k + 1) * (n block (k + 1))) + (n block k) set F = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } ; set F1 = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } ; set F2 = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; A1: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } c= { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } or x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ) assume x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } ; ::_thesis: x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } then consider f being Function of (n + 1),(k + 1) such that A2: f = x and A3: ( f is onto & f is "increasing ) ; ( f " {(f . n)} = {n} or f " {(f . n)} <> {n} ) ; then ( f in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } or f in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ) by A3; hence x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } by A2, XBOOLE_0:def_3; ::_thesis: verum end; { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } c= { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } or x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } ) assume x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; ::_thesis: x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } then ( x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } or x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ) by XBOOLE_0:def_3; then ( ex f being Function of (n + 1),(k + 1) st ( f = x & f is onto & f is "increasing & f " {(f . n)} = {n} ) or ex f being Function of (n + 1),(k + 1) st ( f = x & f is onto & f is "increasing & f " {(f . n)} <> {n} ) ) ; hence x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } ; ::_thesis: verum end; then A4: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } \/ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing ) } by A1, XBOOLE_0:def_10; A5: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } misses { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } proof assume { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } meets { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; ::_thesis: contradiction then consider x being set such that A6: x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } /\ { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } by XBOOLE_0:4; x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } by A6, XBOOLE_0:def_4; then A7: ex f being Function of (n + 1),(k + 1) st ( f = x & f is onto & f is "increasing & f " {(f . n)} <> {n} ) ; x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } by A6, XBOOLE_0:def_4; then ex f being Function of (n + 1),(k + 1) st ( f = x & f is onto & f is "increasing & f " {(f . n)} = {n} ) ; hence contradiction by A7; ::_thesis: verum end; A8: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } c= Funcs ((n + 1),(k + 1)) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } or x in Funcs ((n + 1),(k + 1)) ) assume x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } ; ::_thesis: x in Funcs ((n + 1),(k + 1)) then ex f being Function of (n + 1),(k + 1) st ( f = x & f is onto & f is "increasing & f " {(f . n)} <> {n} ) ; hence x in Funcs ((n + 1),(k + 1)) by FUNCT_2:8; ::_thesis: verum end; A9: { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } c= Funcs ((n + 1),(k + 1)) proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } or x in Funcs ((n + 1),(k + 1)) ) assume x in { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } ; ::_thesis: x in Funcs ((n + 1),(k + 1)) then ex f being Function of (n + 1),(k + 1) st ( f = x & f is onto & f is "increasing & f " {(f . n)} = {n} ) ; hence x in Funcs ((n + 1),(k + 1)) by FUNCT_2:8; ::_thesis: verum end; Funcs ((n + 1),(k + 1)) is finite by FRAENKEL:6; then reconsider F1 = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} = {n} ) } , F2 = { f where f is Function of (n + 1),(k + 1) : ( f is onto & f is "increasing & f " {(f . n)} <> {n} ) } as finite set by A9, A8; reconsider k1 = k + 1 as Element of NAT ; A10: card F2 = k1 * (n block k1) by Th45; card F1 = n block k by Th42; hence (n + 1) block (k + 1) = ((k + 1) * (n block (k + 1))) + (n block k) by A4, A5, A10, CARD_2:40; ::_thesis: verum end; theorem Th47: :: STIRL2_1:47 for n being Nat st n >= 1 holds n block 2 = (1 / 2) * ((2 |^ n) - 2) proof let n be Nat; ::_thesis: ( n >= 1 implies n block 2 = (1 / 2) * ((2 |^ n) - 2) ) defpred S1[ Nat] means $1 block 2 = (1 / 2) * ((2 |^ $1) - 2); A1: for k being Nat st k >= 1 & S1[k] holds S1[k + 1] proof let k be Nat; ::_thesis: ( k >= 1 & S1[k] implies S1[k + 1] ) assume that A2: k >= 1 and A3: S1[k] ; ::_thesis: S1[k + 1] (k + 1) block 2 = (2 * (k block (1 + 1))) + (k block 1) by Th46 .= (2 * ((1 / 2) * ((2 |^ k) - 2))) + 1 by A2, A3, Th32 .= (1 / 2) * ((2 * (2 |^ k)) - 2) .= (1 / 2) * ((2 |^ (k + 1)) - 2) by NEWTON:6 ; hence S1[k + 1] ; ::_thesis: verum end; 2 |^ 1 = 2 by NEWTON:5; then A4: S1[1] by Th29; for k being Nat st k >= 1 holds S1[k] from NAT_1:sch_8(A4, A1); hence ( n >= 1 implies n block 2 = (1 / 2) * ((2 |^ n) - 2) ) ; ::_thesis: verum end; theorem Th48: :: STIRL2_1:48 for n being Nat st n >= 2 holds n block 3 = (1 / 6) * (((3 |^ n) - (3 * (2 |^ n))) + 3) proof let n be Nat; ::_thesis: ( n >= 2 implies n block 3 = (1 / 6) * (((3 |^ n) - (3 * (2 |^ n))) + 3) ) defpred S1[ Nat] means $1 block 3 = (1 / 6) * (((3 |^ $1) - (3 * (2 |^ $1))) + 3); A1: for k being Nat st k >= 2 & S1[k] holds S1[k + 1] proof let k be Nat; ::_thesis: ( k >= 2 & S1[k] implies S1[k + 1] ) assume that A2: k >= 2 and A3: S1[k] ; ::_thesis: S1[k + 1] k block 2 = (1 / 2) * ((2 |^ k) - 2) by A2, Th47, XXREAL_0:2; hence (k + 1) block 3 = (3 * (k block (2 + 1))) + ((1 / 2) * ((2 |^ k) - 2)) by Th46 .= (1 / 6) * (((3 * (3 |^ k)) - ((3 * 2) * (2 |^ k))) + 3) by A3 .= (1 / 6) * (((3 |^ (k + 1)) - (3 * (2 * (2 |^ k)))) + 3) by NEWTON:6 .= (1 / 6) * (((3 |^ (k + 1)) - (3 * (2 |^ (k + 1)))) + 3) by NEWTON:6 ; ::_thesis: verum end; (1 / 6) * (((3 |^ 2) - (3 * (2 |^ 2))) + 3) = (1 / 6) * (((3 * 3) - (3 * (2 |^ 2))) + 3) by WSIERP_1:1 .= (1 / 6) * (((3 * 3) - (3 * (2 * 2))) + 3) by WSIERP_1:1 .= 2 block 3 by Th29 ; then A4: S1[2] ; for k being Nat st k >= 2 holds S1[k] from NAT_1:sch_8(A4, A1); hence ( n >= 2 implies n block 3 = (1 / 6) * (((3 |^ n) - (3 * (2 |^ n))) + 3) ) ; ::_thesis: verum end; Lm3: for n being Nat holds n |^ 3 = (n * n) * n proof let n be Nat; ::_thesis: n |^ 3 = (n * n) * n reconsider n = n as Element of NAT by ORDINAL1:def_12; n |^ (2 + 1) = (n |^ 2) * n by NEWTON:6 .= (n * n) * n by WSIERP_1:1 ; hence n |^ 3 = (n * n) * n ; ::_thesis: verum end; theorem :: STIRL2_1:49 for n being Nat st n >= 3 holds n block 4 = (1 / 24) * ((((4 |^ n) - (4 * (3 |^ n))) + (6 * (2 |^ n))) - 4) proof let n be Nat; ::_thesis: ( n >= 3 implies n block 4 = (1 / 24) * ((((4 |^ n) - (4 * (3 |^ n))) + (6 * (2 |^ n))) - 4) ) defpred S1[ Nat] means $1 block 4 = (1 / 24) * ((((4 |^ $1) - (4 * (3 |^ $1))) + (6 * (2 |^ $1))) - 4); A1: for k being Nat st k >= 3 & S1[k] holds S1[k + 1] proof let k be Nat; ::_thesis: ( k >= 3 & S1[k] implies S1[k + 1] ) assume that A2: k >= 3 and A3: S1[k] ; ::_thesis: S1[k + 1] k block 3 = (1 / 6) * (((3 |^ k) - (3 * (2 |^ k))) + 3) by A2, Th48, XXREAL_0:2; hence (k + 1) block 4 = (4 * (k block (3 + 1))) + ((1 / 6) * (((3 |^ k) - (3 * (2 |^ k))) + 3)) by Th46 .= (1 / 24) * ((((4 * (4 |^ k)) - (4 * (3 * (3 |^ k)))) + (6 * (2 * (2 |^ k)))) - 4) by A3 .= (1 / 24) * ((((4 |^ (k + 1)) - (4 * (3 * (3 |^ k)))) + (6 * (2 * (2 |^ k)))) - 4) by NEWTON:6 .= (1 / 24) * ((((4 |^ (k + 1)) - (4 * (3 |^ (k + 1)))) + (6 * (2 * (2 |^ k)))) - 4) by NEWTON:6 .= (1 / 24) * ((((4 |^ (k + 1)) - (4 * (3 |^ (k + 1)))) + (6 * (2 |^ (k + 1)))) - 4) by NEWTON:6 ; ::_thesis: verum end; (1 / 24) * ((((4 |^ 3) - (4 * (3 |^ 3))) + (6 * (2 |^ 3))) - 4) = (1 / 24) * (((((4 * 4) * 4) - (4 * (3 |^ 3))) + (6 * (2 |^ 3))) - 4) by Lm3 .= (1 / 24) * (((64 - (4 * ((3 * 3) * 3))) + (6 * (2 |^ 3))) - 4) by Lm3 .= (1 / 24) * (((64 - (4 * 27)) + (6 * ((2 * 2) * 2))) - 4) by Lm3 .= 3 block 4 by Th29 ; then A4: S1[3] ; for k being Nat st k >= 3 holds S1[k] from NAT_1:sch_8(A4, A1); hence ( n >= 3 implies n block 4 = (1 / 24) * ((((4 |^ n) - (4 * (3 |^ n))) + (6 * (2 |^ n))) - 4) ) ; ::_thesis: verum end; theorem Th50: :: STIRL2_1:50 ( 3 ! = 6 & 4 ! = 24 ) proof thus A1: 3 ! = (2 + 1) ! .= 2 * 3 by NEWTON:14, NEWTON:15 .= 6 ; ::_thesis: 4 ! = 24 thus 4 ! = (3 + 1) ! .= 6 * 4 by A1, NEWTON:15 .= 24 ; ::_thesis: verum end; theorem Th51: :: STIRL2_1:51 for n being Nat holds ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) proof let n be Nat; ::_thesis: ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) now__::_thesis:_(_n_choose_1_=_n_&_n_choose_2_=_(n_*_(n_-_1))_/_2_&_n_choose_3_=_((n_*_(n_-_1))_*_(n_-_2))_/_6_&_n_choose_4_=_(((n_*_(n_-_1))_*_(n_-_2))_*_(n_-_3))_/_24_) percases ( n = 0 or n = 1 or n = 2 or n = 3 or n > 3 ) by NAT_1:27; suppose n = 0 ; ::_thesis: ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) hence ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) by NEWTON:def_3; ::_thesis: verum end; suppose n = 1 ; ::_thesis: ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) hence ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) by NEWTON:21, NEWTON:def_3; ::_thesis: verum end; suppose n = 2 ; ::_thesis: ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) hence ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) by NEWTON:21, NEWTON:23, NEWTON:def_3; ::_thesis: verum end; supposeA1: n = 3 ; ::_thesis: ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) then reconsider n1 = n - 1, n2 = n - 2 as Element of NAT by NAT_1:20; A2: (n2 + 1) ! = (n2 !) * (n2 + 1) by NEWTON:15; n2 ! <> 0 by NEWTON:17; then A3: (n2 !) / (n2 !) = 1 by XCMPLX_1:60; (n1 + 1) ! = (n1 !) * n by NEWTON:15; then n choose 2 = ((n2 !) * ((n - 1) * n)) / ((n2 !) * (2 !)) by A1, A2, NEWTON:def_3 .= (((n2 !) / (n2 !)) * ((n - 1) * n)) / 2 by NEWTON:14, XCMPLX_1:83 .= ((n - 1) * n) / 2 by A3 ; hence ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) by A1, NEWTON:21, NEWTON:23, NEWTON:def_3; ::_thesis: verum end; supposeA4: n > 3 ; ::_thesis: ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) then n >= 3 + 1 by NAT_1:13; then reconsider n1 = n - 1, n2 = n - 2, n3 = n - 3, n4 = n - 4 as Element of NAT by NAT_1:21, XXREAL_0:2; A5: (n1 + 1) ! = (n1 !) * n by NEWTON:15; A6: (n2 + 1) ! = (n2 !) * (n2 + 1) by NEWTON:15; n2 ! <> 0 by NEWTON:17; then A7: (n2 !) / (n2 !) = 1 by XCMPLX_1:60; n >= 2 by A4, XXREAL_0:2; then A8: n choose 2 = ((n2 !) * (n1 * n)) / ((n2 !) * (2 !)) by A5, A6, NEWTON:def_3 .= (((n2 !) / (n2 !)) * (n1 * n)) / 2 by NEWTON:14, XCMPLX_1:83 .= (n * n1) / 2 by A7 ; n4 ! <> 0 by NEWTON:17; then A9: (n4 !) / (n4 !) = 1 by XCMPLX_1:60; A10: (n4 + 1) ! = (n4 !) * (n4 + 1) by NEWTON:15; n3 ! <> 0 by NEWTON:17; then A11: (n3 !) / (n3 !) = 1 by XCMPLX_1:60; A12: (n3 + 1) ! = (n3 !) * (n3 + 1) by NEWTON:15; then A13: n choose 3 = ((n3 !) * ((n2 * n1) * n)) / ((n3 !) * (3 !)) by A4, A5, A6, NEWTON:def_3 .= (((n3 !) / (n3 !)) * ((n2 * n1) * n)) / 6 by Th50, XCMPLX_1:83 .= ((n * n1) * n2) / 6 by A11 ; n >= 3 + 1 by A4, NAT_1:13; then n choose 4 = ((n4 !) * (((n3 * n2) * n1) * n)) / ((n4 !) * (4 !)) by A5, A6, A12, A10, NEWTON:def_3 .= (((n4 !) / (n4 !)) * (((n3 * n2) * n1) * n)) / 24 by Th50, XCMPLX_1:83 .= (((n * n1) * n2) * n3) / 24 by A9 ; hence ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) by A4, A8, A13, NEWTON:23, XXREAL_0:2; ::_thesis: verum end; end; end; hence ( n choose 1 = n & n choose 2 = (n * (n - 1)) / 2 & n choose 3 = ((n * (n - 1)) * (n - 2)) / 6 & n choose 4 = (((n * (n - 1)) * (n - 2)) * (n - 3)) / 24 ) ; ::_thesis: verum end; theorem Th52: :: STIRL2_1:52 for n being Nat holds (n + 1) block n = (n + 1) choose 2 proof let n be Nat; ::_thesis: (n + 1) block n = (n + 1) choose 2 defpred S1[ Nat] means ($1 + 1) block $1 = ($1 + 1) choose 2; A1: for k being Nat st S1[k] holds S1[k + 1] proof let k be Nat; ::_thesis: ( S1[k] implies S1[k + 1] ) assume A2: S1[k] ; ::_thesis: S1[k + 1] set k1 = k + 1; thus ((k + 1) + 1) block (k + 1) = ((k + 1) * ((k + 1) block (k + 1))) + ((k + 1) block k) by Th46 .= ((k + 1) * 1) + ((k + 1) choose 2) by A2, Th26 .= (k + 1) + (((k + 1) * ((k + 1) - 1)) / 2) by Th51 .= (((k + 1) + 1) * (((k + 1) + 1) - 1)) / 2 .= ((k + 1) + 1) choose 2 by Th51 ; ::_thesis: verum end; 1 block 0 = 0 by Th31; then A3: S1[ 0 ] by NEWTON:def_3; for k being Nat holds S1[k] from NAT_1:sch_2(A3, A1); hence (n + 1) block n = (n + 1) choose 2 ; ::_thesis: verum end; theorem :: STIRL2_1:53 for n being Nat holds (n + 2) block n = (3 * ((n + 2) choose 4)) + ((n + 2) choose 3) proof let n be Nat; ::_thesis: (n + 2) block n = (3 * ((n + 2) choose 4)) + ((n + 2) choose 3) defpred S1[ Nat] means ($1 + 2) block $1 = (3 * (($1 + 2) choose 4)) + (($1 + 2) choose 3); A1: 2 choose 3 = 0 by NEWTON:def_3; A2: for k being Nat st S1[k] holds S1[k + 1] proof let k be Nat; ::_thesis: ( S1[k] implies S1[k + 1] ) assume A3: S1[k] ; ::_thesis: S1[k + 1] set k1 = k + 1; set k2 = k + 2; set k3 = (k + 2) + 1; A4: (k + 1) * (((k + 1) + 1) block (k + 1)) = (k + 1) * ((k + 2) choose 2) by Th52 .= (k + 1) * (((k + 2) * ((k + 2) - 1)) / 2) by Th51 .= ((k + 2) * ((k + 2) - 1)) * (((k + 1) * 12) / 24) ; (k + 2) block k = (3 * (((((k + 2) * ((k + 2) - 1)) * ((k + 2) - 2)) * ((k + 2) - 3)) / 24)) + ((k + 2) choose 3) by A3, Th51 .= (3 * (((((k + 2) * ((k + 2) - 1)) * ((k + 2) - 2)) * ((k + 2) - 3)) / 24)) + ((((k + 2) * ((k + 2) - 1)) * ((k + 2) - 2)) / 6) by Th51 .= ((k + 2) * ((k + 2) - 1)) * ((((3 * ((k + 2) - 2)) * ((k + 2) - 3)) / 24) + ((4 * ((k + 2) - 2)) / 24)) ; then ((k + 2) + 1) block (k + 1) = (((k + 2) * (k + 1)) * (((k + 1) * 12) / 24)) + (((k + 2) * (k + 1)) * ((((3 * k) * ((k + 2) - 3)) / 24) + ((4 * k) / 24))) by A4, Th46 .= (3 * ((((((k + 2) + 1) * (((k + 2) + 1) - 1)) * (((k + 2) + 1) - 2)) * (((k + 2) + 1) - 3)) / 24)) + (((((k + 2) + 1) * (k + 2)) * (k + 1)) / 6) .= (3 * (((k + 2) + 1) choose 4)) + (((((k + 2) + 1) * (((k + 2) + 1) - 1)) * (((k + 2) + 1) - 2)) / 6) by Th51 .= (3 * (((k + 2) + 1) choose 4)) + (((k + 2) + 1) choose 3) by Th51 ; hence S1[k + 1] ; ::_thesis: verum end; 2 choose 4 = 0 by NEWTON:def_3; then A5: S1[ 0 ] by A1, Th31; for k being Nat holds S1[k] from NAT_1:sch_2(A5, A2); hence (n + 2) block n = (3 * ((n + 2) choose 4)) + ((n + 2) choose 3) ; ::_thesis: verum end; theorem Th54: :: STIRL2_1:54 for F being Function for y being set holds ( rng (F | ((dom F) \ (F " {y}))) = (rng F) \ {y} & ( for x being set st x <> y holds (F | ((dom F) \ (F " {y}))) " {x} = F " {x} ) ) proof let F be Function; ::_thesis: for y being set holds ( rng (F | ((dom F) \ (F " {y}))) = (rng F) \ {y} & ( for x being set st x <> y holds (F | ((dom F) \ (F " {y}))) " {x} = F " {x} ) ) let y be set ; ::_thesis: ( rng (F | ((dom F) \ (F " {y}))) = (rng F) \ {y} & ( for x being set st x <> y holds (F | ((dom F) \ (F " {y}))) " {x} = F " {x} ) ) set D = (dom F) \ (F " {y}); A1: rng (F | ((dom F) \ (F " {y}))) c= (rng F) \ {y} proof let Fx be set ; :: according to TARSKI:def_3 ::_thesis: ( not Fx in rng (F | ((dom F) \ (F " {y}))) or Fx in (rng F) \ {y} ) assume Fx in rng (F | ((dom F) \ (F " {y}))) ; ::_thesis: Fx in (rng F) \ {y} then consider x being set such that A2: x in dom (F | ((dom F) \ (F " {y}))) and A3: Fx = (F | ((dom F) \ (F " {y}))) . x by FUNCT_1:def_3; A4: x in (dom F) /\ ((dom F) \ (F " {y})) by A2, RELAT_1:61; then x in ((dom F) /\ (dom F)) \ (F " {y}) by XBOOLE_1:49; then not x in F " {y} by XBOOLE_0:def_5; then not F . x in {y} by A4, FUNCT_1:def_7; then A5: not Fx in {y} by A2, A3, FUNCT_1:47; F . x in rng F by A4, FUNCT_1:def_3; then Fx in rng F by A2, A3, FUNCT_1:47; hence Fx in (rng F) \ {y} by A5, XBOOLE_0:def_5; ::_thesis: verum end; (rng F) \ {y} c= rng (F | ((dom F) \ (F " {y}))) proof let Fx be set ; :: according to TARSKI:def_3 ::_thesis: ( not Fx in (rng F) \ {y} or Fx in rng (F | ((dom F) \ (F " {y}))) ) assume A6: Fx in (rng F) \ {y} ; ::_thesis: Fx in rng (F | ((dom F) \ (F " {y}))) consider x being set such that A7: x in dom F and A8: F . x = Fx by A6, FUNCT_1:def_3; not Fx in {y} by A6, XBOOLE_0:def_5; then not x in F " {y} by A8, FUNCT_1:def_7; then x in (dom F) \ (F " {y}) by A7, XBOOLE_0:def_5; then x in (dom F) /\ ((dom F) \ (F " {y})) by XBOOLE_0:def_4; then A9: x in dom (F | ((dom F) \ (F " {y}))) by RELAT_1:61; then (F | ((dom F) \ (F " {y}))) . x in rng (F | ((dom F) \ (F " {y}))) by FUNCT_1:def_3; hence Fx in rng (F | ((dom F) \ (F " {y}))) by A8, A9, FUNCT_1:47; ::_thesis: verum end; hence rng (F | ((dom F) \ (F " {y}))) = (rng F) \ {y} by A1, XBOOLE_0:def_10; ::_thesis: for x being set st x <> y holds (F | ((dom F) \ (F " {y}))) " {x} = F " {x} let x be set ; ::_thesis: ( x <> y implies (F | ((dom F) \ (F " {y}))) " {x} = F " {x} ) assume A10: x <> y ; ::_thesis: (F | ((dom F) \ (F " {y}))) " {x} = F " {x} now__::_thesis:_for_z_being_set_st_z_in_F_"_{x}_holds_ z_in_(dom_F)_\_(F_"_{y}) let z be set ; ::_thesis: ( z in F " {x} implies z in (dom F) \ (F " {y}) ) assume A11: z in F " {x} ; ::_thesis: z in (dom F) \ (F " {y}) F . z in {x} by A11, FUNCT_1:def_7; then F . z <> y by A10, TARSKI:def_1; then not F . z in {y} by TARSKI:def_1; then A12: not z in F " {y} by FUNCT_1:def_7; z in dom F by A11, FUNCT_1:def_7; hence z in (dom F) \ (F " {y}) by A12, XBOOLE_0:def_5; ::_thesis: verum end; then F " {x} c= (dom F) \ (F " {y}) by TARSKI:def_3; hence (F | ((dom F) \ (F " {y}))) " {x} = F " {x} by FUNCT_2:98; ::_thesis: verum end; theorem Th55: :: STIRL2_1:55 for k being Nat for X, x being set st card X = k + 1 & x in X holds card (X \ {x}) = k proof let k be Nat; ::_thesis: for X, x being set st card X = k + 1 & x in X holds card (X \ {x}) = k let X, x be set ; ::_thesis: ( card X = k + 1 & x in X implies card (X \ {x}) = k ) assume that A1: card X = k + 1 and A2: x in X ; ::_thesis: card (X \ {x}) = k reconsider X9 = X as finite set by A1; set Xx = X9 \ {x}; {x} c= X by A2, ZFMISC_1:31; then {x} /\ X = {x} by XBOOLE_1:28; then (X9 \ {x}) \/ {x} = X by XBOOLE_1:51; then A3: (card {x}) + (card (X9 \ {x})) = k + 1 by A1, CARD_2:40, XBOOLE_1:79; card {x} = 1 by CARD_1:30; hence card (X \ {x}) = k by A3; ::_thesis: verum end; scheme :: STIRL2_1:sch 7 Sch9{ P1[ set ], P2[ set , Function] } : for F being Function st rng F is finite holds P1[F] provided A1: P1[ {} ] and A2: for F being Function st ( for x being set st x in rng F & P2[x,F] holds P1[F | ((dom F) \ (F " {x}))] ) holds P1[F] proof defpred S1[ Nat] means for F being Function st card (rng F) = $1 holds P1[F]; A3: for n being Nat st S1[n] holds S1[n + 1] proof let n be Nat; ::_thesis: ( S1[n] implies S1[n + 1] ) assume A4: S1[n] ; ::_thesis: S1[n + 1] let F be Function; ::_thesis: ( card (rng F) = n + 1 implies P1[F] ) assume A5: card (rng F) = n + 1 ; ::_thesis: P1[F] for x being set st x in rng F & P2[x,F] holds P1[F | ((dom F) \ (F " {x}))] proof let x be set ; ::_thesis: ( x in rng F & P2[x,F] implies P1[F | ((dom F) \ (F " {x}))] ) assume that A6: x in rng F and P2[x,F] ; ::_thesis: P1[F | ((dom F) \ (F " {x}))] set D = (dom F) \ (F " {x}); card ((rng F) \ {x}) = n by A5, A6, Th55; then card (rng (F | ((dom F) \ (F " {x})))) = n by Th54; hence P1[F | ((dom F) \ (F " {x}))] by A4; ::_thesis: verum end; hence P1[F] by A2; ::_thesis: verum end; let F be Function; ::_thesis: ( rng F is finite implies P1[F] ) assume rng F is finite ; ::_thesis: P1[F] then consider n being Nat such that A7: rng F,n are_equipotent by CARD_1:43; A8: card (rng F) = n by A7, CARD_1:def_2; A9: S1[ 0 ] proof let F be Function; ::_thesis: ( card (rng F) = 0 implies P1[F] ) assume card (rng F) = 0 ; ::_thesis: P1[F] then rng F = {} ; hence P1[F] by A1, RELAT_1:41; ::_thesis: verum end; for k being Nat holds S1[k] from NAT_1:sch_2(A9, A3); hence P1[F] by A8; ::_thesis: verum end; theorem Th56: :: STIRL2_1:56 for N being Subset of NAT st N is finite holds ex k being Nat st for n being Nat st n in N holds n <= k proof let N be Subset of NAT; ::_thesis: ( N is finite implies ex k being Nat st for n being Nat st n in N holds n <= k ) assume N is finite ; ::_thesis: ex k being Nat st for n being Nat st n in N holds n <= k then consider n being Nat such that A1: N,n are_equipotent by CARD_1:43; consider F being Function such that F is one-to-one and A2: dom F = n and A3: rng F = N by A1, WELLORD2:def_4; reconsider F = F as XFinSequence by A2, AFINSQ_1:5; reconsider F = F as XFinSequence of NAT by A3, RELAT_1:def_19; reconsider k = Sum F as Element of NAT by ORDINAL1:def_12; take k ; ::_thesis: for n being Nat st n in N holds n <= k let n be Nat; ::_thesis: ( n in N implies n <= k ) assume A4: n in N ; ::_thesis: n <= k F <> 0 by A3, A4; then A5: len F > 0 ; ex x being set st ( x in dom F & F . x = n ) by A3, A4, FUNCT_1:def_3; hence n <= k by A5, AFINSQ_2:61; ::_thesis: verum end; theorem Th57: :: STIRL2_1:57 for X, Y, x, y being set st ( Y is empty implies X is empty ) & not x in X holds for F being Function of X,Y ex G being Function of (X \/ {x}),(Y \/ {y}) st ( G | X = F & G . x = y ) proof let X, Y, x, y be set ; ::_thesis: ( ( Y is empty implies X is empty ) & not x in X implies for F being Function of X,Y ex G being Function of (X \/ {x}),(Y \/ {y}) st ( G | X = F & G . x = y ) ) assume that A1: ( Y is empty implies X is empty ) and A2: not x in X ; ::_thesis: for F being Function of X,Y ex G being Function of (X \/ {x}),(Y \/ {y}) st ( G | X = F & G . x = y ) set Y1 = Y \/ {y}; set X1 = X \/ {x}; deffunc H1( set ) -> set = y; let F be Function of X,Y; ::_thesis: ex G being Function of (X \/ {x}),(Y \/ {y}) st ( G | X = F & G . x = y ) y in {y} by TARSKI:def_1; then A3: for x9 being set st x9 in (X \/ {x}) \ X holds H1(x9) in Y \/ {y} by XBOOLE_0:def_3; A4: ( X c= X \/ {x} & Y c= Y \/ {y} ) by XBOOLE_1:7; consider G being Function of (X \/ {x}),(Y \/ {y}) such that A5: ( G | X = F & ( for x9 being set st x9 in (X \/ {x}) \ X holds G . x9 = H1(x9) ) ) from STIRL2_1:sch_2(A3, A4, A1); x in {x} by TARSKI:def_1; then x in X \/ {x} by XBOOLE_0:def_3; then x in (X \/ {x}) \ X by A2, XBOOLE_0:def_5; then G . x = y by A5; hence ex G being Function of (X \/ {x}),(Y \/ {y}) st ( G | X = F & G . x = y ) by A5; ::_thesis: verum end; theorem Th58: :: STIRL2_1:58 for X, Y, x, y being set st ( Y is empty implies X is empty ) holds for F being Function of X,Y for G being Function of (X \/ {x}),(Y \/ {y}) st G | X = F & G . x = y holds ( ( F is onto implies G is onto ) & ( not y in Y & F is one-to-one implies G is one-to-one ) ) proof let X, Y, x, y be set ; ::_thesis: ( ( Y is empty implies X is empty ) implies for F being Function of X,Y for G being Function of (X \/ {x}),(Y \/ {y}) st G | X = F & G . x = y holds ( ( F is onto implies G is onto ) & ( not y in Y & F is one-to-one implies G is one-to-one ) ) ) assume A1: ( Y is empty implies X is empty ) ; ::_thesis: for F being Function of X,Y for G being Function of (X \/ {x}),(Y \/ {y}) st G | X = F & G . x = y holds ( ( F is onto implies G is onto ) & ( not y in Y & F is one-to-one implies G is one-to-one ) ) let F be Function of X,Y; ::_thesis: for G being Function of (X \/ {x}),(Y \/ {y}) st G | X = F & G . x = y holds ( ( F is onto implies G is onto ) & ( not y in Y & F is one-to-one implies G is one-to-one ) ) let G be Function of (X \/ {x}),(Y \/ {y}); ::_thesis: ( G | X = F & G . x = y implies ( ( F is onto implies G is onto ) & ( not y in Y & F is one-to-one implies G is one-to-one ) ) ) assume that A2: G | X = F and A3: G . x = y ; ::_thesis: ( ( F is onto implies G is onto ) & ( not y in Y & F is one-to-one implies G is one-to-one ) ) thus ( F is onto implies G is onto ) ::_thesis: ( not y in Y & F is one-to-one implies G is one-to-one ) proof assume A4: F is onto ; ::_thesis: G is onto Y \/ {y} c= rng G proof let Fx be set ; :: according to TARSKI:def_3 ::_thesis: ( not Fx in Y \/ {y} or Fx in rng G ) assume A5: Fx in Y \/ {y} ; ::_thesis: Fx in rng G now__::_thesis:_Fx_in_rng_G percases ( Fx in Y or Fx in {y} ) by A5, XBOOLE_0:def_3; suppose Fx in Y ; ::_thesis: Fx in rng G then Fx in rng F by A4, FUNCT_2:def_3; then consider x9 being set such that A6: x9 in dom F and A7: F . x9 = Fx by FUNCT_1:def_3; A8: x9 in X by A6; A9: dom G = X \/ {x} by FUNCT_2:def_1; A10: X c= X \/ {x} by XBOOLE_1:7; G . x9 = F . x9 by A2, A6, FUNCT_1:47; hence Fx in rng G by A7, A8, A10, A9, FUNCT_1:def_3; ::_thesis: verum end; supposeA11: Fx in {y} ; ::_thesis: Fx in rng G A12: dom G = X \/ {x} by FUNCT_2:def_1; A13: {x} c= X \/ {x} by XBOOLE_1:7; A14: x in {x} by TARSKI:def_1; Fx = y by A11, TARSKI:def_1; hence Fx in rng G by A3, A12, A14, A13, FUNCT_1:def_3; ::_thesis: verum end; end; end; hence Fx in rng G ; ::_thesis: verum end; then Y \/ {y} = rng G by XBOOLE_0:def_10; hence G is onto by FUNCT_2:def_3; ::_thesis: verum end; thus ( not y in Y & F is one-to-one implies G is one-to-one ) ::_thesis: verum proof assume that A15: not y in Y and A16: F is one-to-one ; ::_thesis: G is one-to-one let x1, x2 be set ; :: according to FUNCT_1:def_4 ::_thesis: ( not x1 in dom G or not x2 in dom G or not G . x1 = G . x2 or x1 = x2 ) assume that A17: x1 in dom G and A18: x2 in dom G and A19: G . x1 = G . x2 ; ::_thesis: x1 = x2 A20: for x9 being set st x9 in X holds ( x9 in dom F & F . x9 = G . x9 & G . x9 <> y ) proof let x9 be set ; ::_thesis: ( x9 in X implies ( x9 in dom F & F . x9 = G . x9 & G . x9 <> y ) ) assume A21: x9 in X ; ::_thesis: ( x9 in dom F & F . x9 = G . x9 & G . x9 <> y ) A22: x9 in dom F by A1, A21, FUNCT_2:def_1; then A23: F . x9 in rng F by FUNCT_1:def_3; F . x9 = G . x9 by A2, A22, FUNCT_1:47; hence ( x9 in dom F & F . x9 = G . x9 & G . x9 <> y ) by A15, A21, A23, FUNCT_2:def_1; ::_thesis: verum end; now__::_thesis:_x1_=_x2 percases ( ( x1 in X & x2 in X ) or ( x1 in X & x2 in {x} ) or ( x1 in {x} & x2 in X ) or ( x1 in {x} & x2 in {x} ) ) by A17, A18, XBOOLE_0:def_3; supposeA24: ( x1 in X & x2 in X ) ; ::_thesis: x1 = x2 then A25: F . x1 = G . x1 by A20; A26: x2 in dom F by A20, A24; A27: F . x2 = G . x2 by A20, A24; x1 in dom F by A20, A24; hence x1 = x2 by A16, A19, A26, A25, A27, FUNCT_1:def_4; ::_thesis: verum end; supposeA28: ( x1 in X & x2 in {x} ) ; ::_thesis: x1 = x2 then G . x2 = y by A3, TARSKI:def_1; hence x1 = x2 by A19, A20, A28; ::_thesis: verum end; supposeA29: ( x1 in {x} & x2 in X ) ; ::_thesis: x1 = x2 then G . x1 = y by A3, TARSKI:def_1; hence x1 = x2 by A19, A20, A29; ::_thesis: verum end; supposeA30: ( x1 in {x} & x2 in {x} ) ; ::_thesis: x1 = x2 then x = x1 by TARSKI:def_1; hence x1 = x2 by A30, TARSKI:def_1; ::_thesis: verum end; end; end; hence x1 = x2 ; ::_thesis: verum end; end; theorem Th59: :: STIRL2_1:59 for N being finite Subset of NAT ex Order being Function of N,(card N) st ( Order is bijective & ( for n, k being Nat st n in dom Order & k in dom Order & n < k holds Order . n < Order . k ) ) proof defpred S1[ Nat] means for N being finite Subset of NAT st card N = $1 holds ex F being Function of N,(card N) st ( F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) ); A1: for k being Nat st S1[k] holds S1[k + 1] proof let k be Nat; ::_thesis: ( S1[k] implies S1[k + 1] ) assume A2: S1[k] ; ::_thesis: S1[k + 1] let N be finite Subset of NAT; ::_thesis: ( card N = k + 1 implies ex F being Function of N,(card N) st ( F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) ) ) assume A3: card N = k + 1 ; ::_thesis: ex F being Function of N,(card N) st ( F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) ) defpred S2[ set ] means $1 in N; ex x being set st x in N by A3, CARD_1:27, XBOOLE_0:def_1; then A4: ex n being Nat st S2[n] ; consider m9 being Nat such that A5: for n being Nat st n in N holds n <= m9 by Th56; A6: for n being Nat st S2[n] holds n <= m9 by A5; consider m being Nat such that A7: ( S2[m] & ( for n being Nat st S2[n] holds n <= m ) ) from NAT_1:sch_6(A6, A4); set Nm = N \ {m}; consider F being Function of (N \ {m}),(card (N \ {m})) such that A8: F is bijective and A9: for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k by A2, A3, A7, Th55; A10: card (N \ {m}) = k by A3, A7, Th55; then A11: (card (N \ {m})) \/ {k} = card N by A3, AFINSQ_1:2; A12: ( card (N \ {m}) is empty implies N \ {m} is empty ) ; m in {m} by TARSKI:def_1; then not m in N \ {m} by XBOOLE_0:def_5; then consider G being Function of ((N \ {m}) \/ {m}),((card (N \ {m})) \/ {k}) such that A13: G | (N \ {m}) = F and A14: G . m = k by A12, Th57; N = (N \ {m}) \/ {m} by A7, ZFMISC_1:116; then reconsider G9 = G as Function of N,(card N) by A3, A10, AFINSQ_1:2; take G9 ; ::_thesis: ( G9 is bijective & ( for n, k being Nat st n in dom G9 & k in dom G9 & n < k holds G9 . n < G9 . k ) ) not k in card (N \ {m}) by A10; then ( G is one-to-one & G is onto ) by A8, A12, A13, A14, Th58; hence G9 is bijective by A11; ::_thesis: for n, k being Nat st n in dom G9 & k in dom G9 & n < k holds G9 . n < G9 . k thus for n, k being Nat st n in dom G9 & k in dom G9 & n < k holds G9 . n < G9 . k ::_thesis: verum proof A15: for i being Nat st i in N \ {m} holds ( i < m & G9 . i < k ) proof let i be Nat; ::_thesis: ( i in N \ {m} implies ( i < m & G9 . i < k ) ) assume A16: i in N \ {m} ; ::_thesis: ( i < m & G9 . i < k ) not i in {m} by A16, XBOOLE_0:def_5; then A17: i <> m by TARSKI:def_1; S2[i] by A16, XBOOLE_0:def_5; then A18: i <= m by A7; i in dom F by A16, FUNCT_2:def_1; then A19: F . i = G9 . i by A13, FUNCT_1:47; card (N \ {m}) = k by A3, A7, Th55; hence ( i < m & G9 . i < k ) by A16, A19, A18, A17, NAT_1:44, XXREAL_0:1; ::_thesis: verum end; let i, j be Nat; ::_thesis: ( i in dom G9 & j in dom G9 & i < j implies G9 . i < G9 . j ) assume that A20: i in dom G9 and A21: j in dom G9 and A22: i < j ; ::_thesis: G9 . i < G9 . j A23: dom G9 = (N \ {m}) \/ {m} by FUNCT_2:def_1; now__::_thesis:_G9_._i_<_G9_._j percases ( ( i in N \ {m} & j in N \ {m} ) or ( i in N \ {m} & j in {m} ) or ( i in {m} & j in N \ {m} ) or ( i in {m} & j in {m} ) ) by A20, A21, A23, XBOOLE_0:def_3; supposeA24: ( i in N \ {m} & j in N \ {m} ) ; ::_thesis: G9 . i < G9 . j then A25: j in dom F by FUNCT_2:def_1; then A26: F . j = G9 . j by A13, FUNCT_1:47; A27: i in dom F by A24, FUNCT_2:def_1; then F . i = G9 . i by A13, FUNCT_1:47; hence G9 . i < G9 . j by A9, A22, A27, A25, A26; ::_thesis: verum end; supposeA28: ( i in N \ {m} & j in {m} ) ; ::_thesis: G9 . i < G9 . j then G9 . i < k by A15; hence G9 . i < G9 . j by A14, A28, TARSKI:def_1; ::_thesis: verum end; supposeA29: ( i in {m} & j in N \ {m} ) ; ::_thesis: G9 . i < G9 . j then i = m by TARSKI:def_1; hence G9 . i < G9 . j by A22, A15, A29; ::_thesis: verum end; supposeA30: ( i in {m} & j in {m} ) ; ::_thesis: G9 . i < G9 . j then i = m by TARSKI:def_1; hence G9 . i < G9 . j by A22, A30, TARSKI:def_1; ::_thesis: verum end; end; end; hence G9 . i < G9 . j ; ::_thesis: verum end; end; A31: S1[ 0 ] proof set P = {} ; A32: rng {} = {} ; A33: dom {} = {} ; let N be finite Subset of NAT; ::_thesis: ( card N = 0 implies ex F being Function of N,(card N) st ( F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) ) ) assume A34: card N = 0 ; ::_thesis: ex F being Function of N,(card N) st ( F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) ) N is empty by A34; then reconsider P = {} as Function of N,(card N) by A34, A32, A33, FUNCT_2:1; take P ; ::_thesis: ( P is bijective & ( for n, k being Nat st n in dom P & k in dom P & n < k holds P . n < P . k ) ) rng P = {} ; then ( P is one-to-one & P is onto ) by A34, FUNCT_2:def_3; hence P is bijective ; ::_thesis: for n, k being Nat st n in dom P & k in dom P & n < k holds P . n < P . k thus for n, k being Nat st n in dom P & k in dom P & n < k holds P . n < P . k ; ::_thesis: verum end; for k being Nat holds S1[k] from NAT_1:sch_2(A31, A1); hence for N being finite Subset of NAT ex Order being Function of N,(card N) st ( Order is bijective & ( for n, k being Nat st n in dom Order & k in dom Order & n < k holds Order . n < Order . k ) ) ; ::_thesis: verum end; Lm4: for X being finite set for x being set st x in X holds card (X \ {x}) < card X proof let X be finite set ; ::_thesis: for x being set st x in X holds card (X \ {x}) < card X let x be set ; ::_thesis: ( x in X implies card (X \ {x}) < card X ) assume A1: x in X ; ::_thesis: card (X \ {x}) < card X card X > 0 by A1; then reconsider c1 = (card X) - 1 as Element of NAT by NAT_1:20; c1 < c1 + 1 by NAT_1:13; hence card (X \ {x}) < card X by A1, Th55; ::_thesis: verum end; theorem Th60: :: STIRL2_1:60 for X, Y being finite set for F being Function of X,Y st card X = card Y holds ( F is onto iff F is one-to-one ) proof let X, Y be finite set ; ::_thesis: for F being Function of X,Y st card X = card Y holds ( F is onto iff F is one-to-one ) let F be Function of X,Y; ::_thesis: ( card X = card Y implies ( F is onto iff F is one-to-one ) ) assume A1: card X = card Y ; ::_thesis: ( F is onto iff F is one-to-one ) thus ( F is onto implies F is one-to-one ) ::_thesis: ( F is one-to-one implies F is onto ) proof assume A2: F is onto ; ::_thesis: F is one-to-one assume not F is one-to-one ; ::_thesis: contradiction then consider x1, x2 being set such that A3: x1 in dom F and A4: x2 in dom F and A5: F . x1 = F . x2 and A6: x1 <> x2 by FUNCT_1:def_4; reconsider Xx = X \ {x1} as finite set ; Y c= F .: Xx proof let Fy be set ; :: according to TARSKI:def_3 ::_thesis: ( not Fy in Y or Fy in F .: Xx ) assume Fy in Y ; ::_thesis: Fy in F .: Xx then Fy in rng F by A2, FUNCT_2:def_3; then consider y being set such that A7: y in dom F and A8: F . y = Fy by FUNCT_1:def_3; now__::_thesis:_Fy_in_F_.:_Xx percases ( y = x1 or y <> x1 ) ; supposeA9: y = x1 ; ::_thesis: Fy in F .: Xx x2 in Xx by A4, A6, ZFMISC_1:56; hence Fy in F .: Xx by A4, A5, A8, A9, FUNCT_1:def_6; ::_thesis: verum end; suppose y <> x1 ; ::_thesis: Fy in F .: Xx then y in Xx by A7, ZFMISC_1:56; hence Fy in F .: Xx by A7, A8, FUNCT_1:def_6; ::_thesis: verum end; end; end; hence Fy in F .: Xx ; ::_thesis: verum end; then A10: card Y c= card Xx by CARD_1:66; card Xx < card X by A3, Lm4; hence contradiction by A1, A10, NAT_1:39; ::_thesis: verum end; thus ( F is one-to-one implies F is onto ) ::_thesis: verum proof assume F is one-to-one ; ::_thesis: F is onto then dom F,F .: (dom F) are_equipotent by CARD_1:33; then A11: card (dom F) = card (F .: (dom F)) by CARD_1:5; assume not F is onto ; ::_thesis: contradiction then not rng F = Y by FUNCT_2:def_3; then not Y c= rng F by XBOOLE_0:def_10; then consider y being set such that A12: y in Y and A13: not y in rng F by TARSKI:def_3; A14: card (rng F) <= card (Y \ {y}) by A13, NAT_1:43, ZFMISC_1:34; A15: F .: (dom F) = rng F by RELAT_1:113; card (Y \ {y}) < card Y by A12, Lm4; hence contradiction by A1, A12, A14, A11, A15, FUNCT_2:def_1; ::_thesis: verum end; end; Lm5: for n being Element of NAT for N being finite Subset of NAT for F being Function of N,(card N) st n in N & F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) holds ex P being Permutation of N st for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) proof let n be Element of NAT ; ::_thesis: for N being finite Subset of NAT for F being Function of N,(card N) st n in N & F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) holds ex P being Permutation of N st for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) let N be finite Subset of NAT; ::_thesis: for F being Function of N,(card N) st n in N & F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) holds ex P being Permutation of N st for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) let F be Function of N,(card N); ::_thesis: ( n in N & F is bijective & ( for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ) implies ex P being Permutation of N st for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) ) assume that A1: n in N and A2: F is bijective and A3: for n, k being Nat st n in dom F & k in dom F & n < k holds F . n < F . k ; ::_thesis: ex P being Permutation of N st for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) rng F = card N by A2, FUNCT_2:def_3; then reconsider F9 = F " as Function of (card N),N by A2, FUNCT_2:25; defpred S1[ set , set ] means for k being Nat st k = $1 holds ( ( k < n implies $2 = (F ") . ((F . k) + 1) ) & ( k = n implies $2 = (F ") . 0 ) & ( k > n implies $2 = k ) ); A4: dom F = N by A1, FUNCT_2:def_1; A5: dom F9 = card N by A1, FUNCT_2:def_1; A6: for x being set st x in N holds ex y being set st ( y in N & S1[x,y] ) proof let x9 be set ; ::_thesis: ( x9 in N implies ex y being set st ( y in N & S1[x9,y] ) ) assume A7: x9 in N ; ::_thesis: ex y being set st ( y in N & S1[x9,y] ) reconsider x = x9 as Element of NAT by A7; now__::_thesis:_ex_y_being_set_st_ (_y_in_N_&_S1[x9,y]_) percases ( x < n or x = n or x > n ) by XXREAL_0:1; supposeA8: x < n ; ::_thesis: ex y being set st ( y in N & S1[x9,y] ) then F . x < F . n by A1, A3, A4, A7; then A9: (F . x) + 1 <= F . n by NAT_1:13; F . n < card N by A1, NAT_1:44; then (F . x) + 1 < card N by A9, XXREAL_0:2; then (F . x) + 1 in dom F9 by A5, NAT_1:44; then A10: F9 . ((F . x) + 1) in rng F9 by FUNCT_1:def_3; set FF = (F ") . ((F . x) + 1); S1[x9,(F ") . ((F . x) + 1)] by A8; hence ex y being set st ( y in N & S1[x9,y] ) by A10; ::_thesis: verum end; supposeA11: x = n ; ::_thesis: ex y being set st ( y in N & S1[x9,y] ) 0 in dom F9 by A1, A5, NAT_1:44; then A12: F9 . 0 in rng F9 by FUNCT_1:def_3; S1[x9,(F ") . 0] by A11; hence ex y being set st ( y in N & S1[x9,y] ) by A12; ::_thesis: verum end; suppose x > n ; ::_thesis: ex y being set st ( y in N & S1[x9,y] ) then S1[x,x] ; hence ex y being set st ( y in N & S1[x9,y] ) by A7; ::_thesis: verum end; end; end; hence ex y being set st ( y in N & S1[x9,y] ) ; ::_thesis: verum end; consider P being Function of N,N such that A13: for x being set st x in N holds S1[x,P . x] from FUNCT_2:sch_1(A6); N c= rng P proof let Px9 be set ; :: according to TARSKI:def_3 ::_thesis: ( not Px9 in N or Px9 in rng P ) assume A14: Px9 in N ; ::_thesis: Px9 in rng P reconsider Px = Px9 as Element of NAT by A14; now__::_thesis:_Px9_in_rng_P percases ( Px <= n or Px > n ) ; supposeA15: Px <= n ; ::_thesis: Px9 in rng P rng F9 = N by A2, A4, FUNCT_1:33; then consider x being set such that A16: x in dom F9 and A17: F9 . x = Px by A14, FUNCT_1:def_3; card N is Subset of NAT by Th8; then reconsider x = x as Element of NAT by A5, A16; now__::_thesis:_Px9_in_rng_P percases ( x = 0 or x > 0 ) ; supposeA18: x = 0 ; ::_thesis: Px9 in rng P A19: dom P = N by A1, FUNCT_2:def_1; P . n = (F ") . 0 by A1, A13; hence Px9 in rng P by A1, A17, A18, A19, FUNCT_1:def_3; ::_thesis: verum end; suppose x > 0 ; ::_thesis: Px9 in rng P then reconsider x1 = x - 1 as Element of NAT by NAT_1:20; A20: x1 < x1 + 1 by NAT_1:13; x < card N by A16, NAT_1:44; then x1 < card N by A20, XXREAL_0:2; then A21: x1 in card N by NAT_1:44; card N = rng F by A2, FUNCT_2:def_3; then consider y being set such that A22: y in dom F and A23: F . y = x1 by A21, FUNCT_1:def_3; reconsider y = y as Element of NAT by A4, A22; A24: y in dom P by A4, A22, FUNCT_2:def_1; A25: y < n proof assume y >= n ; ::_thesis: contradiction then ( y > n or y = n ) by XXREAL_0:1; then A26: x1 >= F . n by A1, A3, A4, A22, A23; x in rng F by A2, A16, FUNCT_1:33; then A27: F . Px = x by A2, A17, FUNCT_1:32; ( Px < n or Px = n ) by A15, XXREAL_0:1; then A28: F . Px <= F . n by A1, A3, A4, A14; x1 + 1 > x1 by NAT_1:13; hence contradiction by A26, A27, A28, XXREAL_0:2; ::_thesis: verum end; (F ") . ((F . y) + 1) = Px by A17, A23; then P . y = Px by A13, A22, A25; hence Px9 in rng P by A24, FUNCT_1:def_3; ::_thesis: verum end; end; end; hence Px9 in rng P ; ::_thesis: verum end; supposeA29: Px > n ; ::_thesis: Px9 in rng P A30: Px in dom P by A14, FUNCT_2:def_1; Px = P . Px by A13, A14, A29; hence Px9 in rng P by A30, FUNCT_1:def_3; ::_thesis: verum end; end; end; hence Px9 in rng P ; ::_thesis: verum end; then N = rng P by XBOOLE_0:def_10; then A31: P is onto by FUNCT_2:def_3; card N = card N ; then ( P is onto & P is one-to-one ) by A31, Th60; then reconsider P = P as Permutation of N ; take P ; ::_thesis: for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) thus for k being Nat st k in N holds ( ( k < n implies P . k = (F ") . ((F . k) + 1) ) & ( k = n implies P . k = (F ") . 0 ) & ( k > n implies P . k = k ) ) by A13; ::_thesis: verum end; theorem Th61: :: STIRL2_1:61 for F, G being Function for y being set st y in rng (G * F) & G is one-to-one holds ex x being set st ( x in dom G & x in rng F & G " {y} = {x} & F " {x} = (G * F) " {y} ) proof let F, G be Function; ::_thesis: for y being set st y in rng (G * F) & G is one-to-one holds ex x being set st ( x in dom G & x in rng F & G " {y} = {x} & F " {x} = (G * F) " {y} ) let y be set ; ::_thesis: ( y in rng (G * F) & G is one-to-one implies ex x being set st ( x in dom G & x in rng F & G " {y} = {x} & F " {x} = (G * F) " {y} ) ) assume that A1: y in rng (G * F) and A2: G is one-to-one ; ::_thesis: ex x being set st ( x in dom G & x in rng F & G " {y} = {x} & F " {x} = (G * F) " {y} ) consider x being set such that A3: x in dom (G * F) and A4: (G * F) . x = y by A1, FUNCT_1:def_3; A5: F . x in dom G by A3, FUNCT_1:11; A6: G . (F . x) = y by A3, A4, FUNCT_1:12; then G . (F . x) in {y} by TARSKI:def_1; then A7: F . x in G " {y} by A5, FUNCT_1:def_7; A8: F " {(F . x)} c= (G * F) " {y} proof let d be set ; :: according to TARSKI:def_3 ::_thesis: ( not d in F " {(F . x)} or d in (G * F) " {y} ) assume A9: d in F " {(F . x)} ; ::_thesis: d in (G * F) " {y} A10: d in dom F by A9, FUNCT_1:def_7; F . d in {(F . x)} by A9, FUNCT_1:def_7; then A11: F . d = F . x by TARSKI:def_1; then G . (F . d) in {y} by A6, TARSKI:def_1; then A12: (G * F) . d in {y} by A10, FUNCT_1:13; d in dom (G * F) by A5, A10, A11, FUNCT_1:11; hence d in (G * F) " {y} by A12, FUNCT_1:def_7; ::_thesis: verum end; y in rng G by A1, FUNCT_1:14; then consider Fx being set such that A13: G " {y} = {Fx} by A2, FUNCT_1:74; x in dom F by A3, FUNCT_1:11; then A14: F . x in rng F by FUNCT_1:def_3; A15: F . x in dom G by A3, FUNCT_1:11; (G * F) " {y} c= F " {(F . x)} proof let d be set ; :: according to TARSKI:def_3 ::_thesis: ( not d in (G * F) " {y} or d in F " {(F . x)} ) assume A16: d in (G * F) " {y} ; ::_thesis: d in F " {(F . x)} A17: d in dom (G * F) by A16, FUNCT_1:def_7; then A18: d in dom F by FUNCT_1:11; (G * F) . d in {y} by A16, FUNCT_1:def_7; then A19: G . (F . d) in {y} by A17, FUNCT_1:12; A20: F . d in dom G by A17, FUNCT_1:11; F . x = Fx by A13, A7, TARSKI:def_1; then F . d in {(F . x)} by A13, A20, A19, FUNCT_1:def_7; hence d in F " {(F . x)} by A18, FUNCT_1:def_7; ::_thesis: verum end; then A21: F " {(F . x)} = (G * F) " {y} by A8, XBOOLE_0:def_10; G " {y} = {(F . x)} by A13, A7, TARSKI:def_1; hence ex x being set st ( x in dom G & x in rng F & G " {y} = {x} & F " {x} = (G * F) " {y} ) by A15, A14, A21; ::_thesis: verum end; definition let Ne, Ke be Subset of NAT; let f be Function of Ne,Ke; attrf is "increasing means :Def3: :: STIRL2_1:def 3 for l, m being Nat st l in rng f & m in rng f & l < m holds min* (f " {l}) < min* (f " {m}); end; :: deftheorem Def3 defines "increasing STIRL2_1:def_3_:_ for Ne, Ke being Subset of NAT for f being Function of Ne,Ke holds ( f is "increasing iff for l, m being Nat st l in rng f & m in rng f & l < m holds min* (f " {l}) < min* (f " {m}) ); theorem Th62: :: STIRL2_1:62 for Ne, Ke being Subset of NAT for F being Function of Ne,Ke st F is "increasing holds min* (rng F) = F . (min* (dom F)) proof let Ne, Ke be Subset of NAT; ::_thesis: for F being Function of Ne,Ke st F is "increasing holds min* (rng F) = F . (min* (dom F)) let F be Function of Ne,Ke; ::_thesis: ( F is "increasing implies min* (rng F) = F . (min* (dom F)) ) assume A1: F is "increasing ; ::_thesis: min* (rng F) = F . (min* (dom F)) now__::_thesis:_min*_(rng_F)_=_F_._(min*_(dom_F)) percases ( rng F is empty or not rng F is empty ) ; supposeA2: rng F is empty ; ::_thesis: min* (rng F) = F . (min* (dom F)) then A3: min* (rng F) = 0 by NAT_1:def_1; dom F = {} by A2, RELAT_1:42; hence min* (rng F) = F . (min* (dom F)) by A3, FUNCT_1:def_2; ::_thesis: verum end; supposeA4: not rng F is empty ; ::_thesis: min* (rng F) = F . (min* (dom F)) then reconsider rngF = rng F, Ke = Ke as non empty Subset of NAT by XBOOLE_1:1; not Ke is empty ; then reconsider domF = dom F as non empty Subset of NAT by A4, FUNCT_2:def_1, RELAT_1:42; set md = min* domF; set mr = min* rngF; min* rngF = F . (min* domF) proof A5: min* domF in dom F by NAT_1:def_1; then F . (min* domF) in rngF by FUNCT_1:def_3; then A6: min* rngF <= F . (min* domF) by NAT_1:def_1; assume min* rngF <> F . (min* domF) ; ::_thesis: contradiction then A7: min* rngF < F . (min* domF) by A6, XXREAL_0:1; A8: min* domF in domF by NAT_1:def_1; A9: min* domF in dom F by NAT_1:def_1; min* rngF in rngF by NAT_1:def_1; then consider x being set such that A10: x in dom F and A11: F . x = min* rngF by FUNCT_1:def_3; A12: F . (min* domF) in {(F . (min* domF))} by TARSKI:def_1; F . x in {(min* rngF)} by A11, TARSKI:def_1; then reconsider Fmr = F " {(min* rngF)}, Fmd = F " {(F . (min* domF))} as non empty Subset of NAT by A10, A12, A9, FUNCT_1:def_7, XBOOLE_1:1; A13: min* rngF in rngF by NAT_1:def_1; min* Fmr in Fmr by NAT_1:def_1; then min* Fmr in domF by FUNCT_1:def_7; then A14: min* Fmr >= min* domF by NAT_1:def_1; F . (min* domF) in {(F . (min* domF))} by TARSKI:def_1; then min* domF in Fmd by A8, FUNCT_1:def_7; then A15: min* domF >= min* Fmd by NAT_1:def_1; F . (min* domF) in rng F by A5, FUNCT_1:def_3; then min* (F " {(min* rngF)}) < min* (F " {(F . (min* domF))}) by A1, A7, A13, Def3; hence contradiction by A14, A15, XXREAL_0:2; ::_thesis: verum end; hence min* (rng F) = F . (min* (dom F)) ; ::_thesis: verum end; end; end; hence min* (rng F) = F . (min* (dom F)) ; ::_thesis: verum end; theorem :: STIRL2_1:63 for Ne, Ke being Subset of NAT for F being Function of Ne,Ke st rng F is finite holds ex I being Function of Ne,Ke ex P being Permutation of (rng F) st ( F = P * I & rng F = rng I & I is "increasing ) proof let Ne, Ke be Subset of NAT; ::_thesis: for F being Function of Ne,Ke st rng F is finite holds ex I being Function of Ne,Ke ex P being Permutation of (rng F) st ( F = P * I & rng F = rng I & I is "increasing ) defpred S1[ set , Function] means $1 = $2 . (min* (dom $2)); defpred S2[ set ] means for Ne, Ke being Subset of NAT for F being Function of Ne,Ke st F = $1 & rng F is finite holds ex P being Permutation of (rng F) ex G being Function of Ne,Ke st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ); A1: S2[ {} ] proof let Ne, Me be Subset of NAT; ::_thesis: for F being Function of Ne,Me st F = {} & rng F is finite holds ex P being Permutation of (rng F) ex G being Function of Ne,Me st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) let F be Function of Ne,Me; ::_thesis: ( F = {} & rng F is finite implies ex P being Permutation of (rng F) ex G being Function of Ne,Me st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) ) assume that A2: F = {} and rng F is finite ; ::_thesis: ex P being Permutation of (rng F) ex G being Function of Ne,Me st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) reconsider R = rng F as empty set by A2; set P = {} ; A3: rng {} = {} ; dom {} = {} ; then reconsider P = {} as Function of R,R by A3, FUNCT_2:1; rng R = {} ; then ( P is one-to-one & P is onto ) by FUNCT_2:def_3; then reconsider P = P as Permutation of (rng F) ; take P ; ::_thesis: ex G being Function of Ne,Me st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) take F ; ::_thesis: ( F = P * F & rng F = rng F & ( for i, j being Nat st i in rng F & j in rng F & i < j holds min* (F " {i}) < min* (F " {j}) ) ) rng F = R ; then F = {} ; hence ( F = P * F & rng F = rng F & ( for i, j being Nat st i in rng F & j in rng F & i < j holds min* (F " {i}) < min* (F " {j}) ) ) ; ::_thesis: verum end; A4: for F being Function st ( for x being set st x in rng F & S1[x,F] holds S2[F | ((dom F) \ (F " {x}))] ) holds S2[F] proof let F9 be Function; ::_thesis: ( ( for x being set st x in rng F9 & S1[x,F9] holds S2[F9 | ((dom F9) \ (F9 " {x}))] ) implies S2[F9] ) assume A5: for x being set st x in rng F9 & S1[x,F9] holds S2[F9 | ((dom F9) \ (F9 " {x}))] ; ::_thesis: S2[F9] let N, K be Subset of NAT; ::_thesis: for F being Function of N,K st F = F9 & rng F is finite holds ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) let F be Function of N,K; ::_thesis: ( F = F9 & rng F is finite implies ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) ) assume that A6: F = F9 and A7: rng F is finite ; ::_thesis: ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) now__::_thesis:_ex_P_being_Permutation_of_(rng_F)_ex_G_being_Function_of_N,K_st_ (_F_=_P_*_G_&_rng_F_=_rng_G_&_(_for_i,_j_being_Nat_st_i_in_rng_G_&_j_in_rng_G_&_i_<_j_holds_ min*_(G_"_{i})_<_min*_(G_"_{j})_)_) percases ( rng F9 is empty or not rng F9 is empty ) ; suppose rng F9 is empty ; ::_thesis: ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) then F9 = {} ; hence ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) by A1, A6; ::_thesis: verum end; supposeA8: not rng F9 is empty ; ::_thesis: ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) then reconsider domF = dom F as non empty Subset of NAT by A6, RELAT_1:42, XBOOLE_1:1; reconsider K = K as non empty Subset of NAT by A6, A8; set m = min* domF; set D = (dom F) \ (F " {(F . (min* domF))}); min* domF in domF by NAT_1:def_1; then A9: F . (min* domF) in rng F by FUNCT_1:def_3; now__::_thesis:_ex_P_being_Permutation_of_(rng_F)_ex_G_being_Function_of_N,K_st_ (_F_=_P_*_G_&_rng_F_=_rng_G_&_(_for_i,_j_being_Nat_st_i_in_rng_G_&_j_in_rng_G_&_i_<_j_holds_ min*_(G_"_{i})_<_min*_(G_"_{j})_)_) percases ( rng (F | ((dom F) \ (F " {(F . (min* domF))}))) is empty or not rng (F | ((dom F) \ (F " {(F . (min* domF))}))) is empty ) ; suppose rng (F | ((dom F) \ (F " {(F . (min* domF))}))) is empty ; ::_thesis: ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) then (rng F) \ {(F . (min* domF))} = {} by Th54; then A10: rng F = {(F . (min* domF))} by A9, ZFMISC_1:58; A11: for i, j being Nat st i in rng F & j in rng F & i < j holds min* (F " {i}) < min* (F " {j}) proof let i, j be Nat; ::_thesis: ( i in rng F & j in rng F & i < j implies min* (F " {i}) < min* (F " {j}) ) assume that A12: i in rng F and A13: j in rng F and A14: i < j ; ::_thesis: min* (F " {i}) < min* (F " {j}) i = F . (min* domF) by A10, A12, TARSKI:def_1; hence min* (F " {i}) < min* (F " {j}) by A10, A13, A14, TARSKI:def_1; ::_thesis: verum end; set P = id (rng F); rng (id (rng F)) = rng F ; then ( id (rng F) is one-to-one & id (rng F) is onto ) by FUNCT_2:def_3; then reconsider P = id (rng F) as Permutation of (rng F) ; F is Function of (dom F),(rng F) by FUNCT_2:1; then P * F = F by FUNCT_2:17; hence ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) by A11; ::_thesis: verum end; supposeA15: not rng (F | ((dom F) \ (F " {(F . (min* domF))}))) is empty ; ::_thesis: ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) rng (F | ((dom F) \ (F " {(F . (min* domF))}))) c= rng F by RELAT_1:70; then reconsider rFD = rng (F | ((dom F) \ (F " {(F . (min* domF))}))) as non empty finite Subset of NAT by A7, A15, XBOOLE_1:1; deffunc H1( set ) -> set = F . (min* domF); reconsider dFD = dom (F | ((dom F) \ (F " {(F . (min* domF))}))) as Subset of NAT by XBOOLE_1:1; reconsider FD = F | ((dom F) \ (F " {(F . (min* domF))})) as Function of dFD,rFD by FUNCT_2:1; A16: ( rFD is empty implies dFD is empty ) ; reconsider rF = rng F as non empty finite Subset of NAT by A7, A9, XBOOLE_1:1; A17: ( dFD c= N & rFD c= K ) ; consider P being Permutation of (rng FD), G being Function of dFD,rFD such that A18: FD = P * G and A19: rng FD = rng G and A20: for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) by A5, A6, A9; A21: for x being set st x in N \ dFD holds H1(x) in K by A9; consider G2 being Function of N,K such that A22: ( G2 | dFD = G & ( for x being set st x in N \ dFD holds G2 . x = H1(x) ) ) from STIRL2_1:sch_2(A21, A17, A16); A23: rng G2 c= rng F proof let Gx be set ; :: according to TARSKI:def_3 ::_thesis: ( not Gx in rng G2 or Gx in rng F ) assume Gx in rng G2 ; ::_thesis: Gx in rng F then consider x being set such that A24: x in dom G2 and A25: G2 . x = Gx by FUNCT_1:def_3; dom G2 = N by FUNCT_2:def_1; then ((dom G2) /\ dFD) \/ (N \ dFD) = dom G2 by XBOOLE_1:51; then ( ( dom G = (dom G2) /\ dFD & x in (dom G2) /\ dFD ) or x in N \ dFD ) by A22, A24, RELAT_1:61, XBOOLE_0:def_3; then ( ( G . x in rng FD & G . x = G2 . x & rng FD = (rng F) \ {(F . (min* domF))} ) or ( G2 . x = F . (min* domF) & min* domF in domF ) ) by A19, A22, Th54, FUNCT_1:47, FUNCT_1:def_3, NAT_1:def_1; hence Gx in rng F by A25, FUNCT_1:def_3, XBOOLE_0:def_5; ::_thesis: verum end; A26: rng FD = (rng F) \ {(F . (min* domF))} by Th54; dom FD = (dom F) /\ ((dom F) \ (F " {(F . (min* domF))})) by RELAT_1:61; then A27: dFD = (dom F) \ (F " {(F . (min* domF))}) by XBOOLE_1:28, XBOOLE_1:36; A28: F " {(F . (min* domF))} c= G2 " {(F . (min* domF))} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in F " {(F . (min* domF))} or x in G2 " {(F . (min* domF))} ) assume A29: x in F " {(F . (min* domF))} ; ::_thesis: x in G2 " {(F . (min* domF))} not x in (dom F) \ (F " {(F . (min* domF))}) by A29, XBOOLE_0:def_5; then x in N \ dFD by A27, A29, XBOOLE_0:def_5; then G2 . x = F . (min* domF) by A22; then A30: G2 . x in {(F . (min* domF))} by TARSKI:def_1; x in N by A29; then x in dom G2 by FUNCT_2:def_1; hence x in G2 " {(F . (min* domF))} by A30, FUNCT_1:def_7; ::_thesis: verum end; rng F c= rng G2 proof rng FD = (rng F) \ {(F . (min* domF))} by Th54; then A31: rng F = (rng FD) \/ {(F . (min* domF))} by A9, ZFMISC_1:116; let Fx be set ; :: according to TARSKI:def_3 ::_thesis: ( not Fx in rng F or Fx in rng G2 ) assume A32: Fx in rng F ; ::_thesis: Fx in rng G2 now__::_thesis:_Fx_in_rng_G2 percases ( Fx in rng FD or Fx in {(F . (min* domF))} ) by A32, A31, XBOOLE_0:def_3; supposeA33: Fx in rng FD ; ::_thesis: Fx in rng G2 rng (G2 | dFD) c= rng G2 by RELAT_1:70; hence Fx in rng G2 by A19, A22, A33; ::_thesis: verum end; supposeA34: Fx in {(F . (min* domF))} ; ::_thesis: Fx in rng G2 A35: min* domF in dom F by NAT_1:def_1; then min* domF in N ; then min* domF in dom G2 by FUNCT_2:def_1; then A36: G2 . (min* domF) in rng G2 by FUNCT_1:def_3; F . (min* domF) in {(F . (min* domF))} by TARSKI:def_1; then min* domF in F " {(F . (min* domF))} by A35, FUNCT_1:def_7; then not min* domF in (dom F) \ (F " {(F . (min* domF))}) by XBOOLE_0:def_5; then A37: min* domF in N \ dFD by A27, A35, XBOOLE_0:def_5; Fx = F . (min* domF) by A34, TARSKI:def_1; hence Fx in rng G2 by A22, A37, A36; ::_thesis: verum end; end; end; hence Fx in rng G2 ; ::_thesis: verum end; then A38: rng G2 = rng F by A23, XBOOLE_0:def_10; not F . (min* domF) in (rng F) \ {(F . (min* domF))} by ZFMISC_1:56; then not F . (min* domF) in rng FD by Th54; then consider P2 being Function of ((rng FD) \/ {(F . (min* domF))}),((rng FD) \/ {(F . (min* domF))}) such that A39: P2 | (rng FD) = P and A40: P2 . (F . (min* domF)) = F . (min* domF) by Th57; not F . (min* domF) in (rng F) \ {(F . (min* domF))} by ZFMISC_1:56; then A41: ( P2 is one-to-one & P2 is onto ) by A39, A40, A26, Th58; (rng FD) \/ {(F . (min* domF))} = rng F by A9, A26, ZFMISC_1:116; then reconsider P2 = P2 as Permutation of (rng F) by A41; consider Orde being Function of rF,(card rF) such that A42: Orde is bijective and A43: for n, k being Nat st n in dom Orde & k in dom Orde & n < k holds Orde . n < Orde . k by Th59; rng Orde = card rF by A42, FUNCT_2:def_3; then reconsider Orde9 = Orde " as Function of (card rF),rF by A42, FUNCT_2:25; consider P1 being Permutation of rF such that A44: for k being Nat st k in rF holds ( ( k < F . (min* domF) implies P1 . k = (Orde ") . ((Orde . k) + 1) ) & ( k = F . (min* domF) implies P1 . k = (Orde ") . 0 ) & ( k > F . (min* domF) implies P1 . k = k ) ) by A9, A42, A43, Lm5; dom G2 = N by FUNCT_2:def_1; then A45: G2 is Function of N,rF by A38, FUNCT_2:1; reconsider P21 = P2 * (P1 ") as Function of rF,rF ; reconsider P21 = P21 as Permutation of rF ; dom P1 = rF by FUNCT_2:def_1; then A46: (P1 ") * P1 = id rF by FUNCT_1:39; rng (P1 * G2) c= K by XBOOLE_1:1; then reconsider PG = P1 * G2 as Function of N,K by A45, FUNCT_2:6; dom G2 = N by FUNCT_2:def_1; then G2 is Function of N,rF by A38, FUNCT_2:1; then (id rF) * G2 = G2 by FUNCT_2:17; then A47: (P1 ") * (P1 * G2) = G2 by A46, RELAT_1:36; G2 " {(F . (min* domF))} c= F " {(F . (min* domF))} proof let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in G2 " {(F . (min* domF))} or x in F " {(F . (min* domF))} ) assume A48: x in G2 " {(F . (min* domF))} ; ::_thesis: x in F " {(F . (min* domF))} A49: x in N \ dFD proof assume not x in N \ dFD ; ::_thesis: contradiction then ( ( x in dom G2 & dom G2 = N & not x in N ) or x in dFD ) by A48, XBOOLE_0:def_5; then A50: x in dom G by FUNCT_2:def_1; then A51: G . x in rng G by FUNCT_1:def_3; A52: rng FD = (rng F) \ {(F . (min* domF))} by Th54; G . x = G2 . x by A22, A50, FUNCT_1:47; then not G2 . x in {(F . (min* domF))} by A51, A52, XBOOLE_0:def_5; hence contradiction by A48, FUNCT_1:def_7; ::_thesis: verum end; then A53: not x in (dom F) \ (F " {(F . (min* domF))}) by A27, XBOOLE_0:def_5; dom F = N by A9, FUNCT_2:def_1; then x in dom F by A49, XBOOLE_0:def_5; hence x in F " {(F . (min* domF))} by A53, XBOOLE_0:def_5; ::_thesis: verum end; then A54: G2 " {(F . (min* domF))} = F " {(F . (min* domF))} by A28, XBOOLE_0:def_10; A55: for n being Nat st n in rng FD holds G " {n} = G2 " {n} proof not K is empty ; then dom F = N by FUNCT_2:def_1; then A56: dFD = (dom G2) \ (G2 " {(F . (min* domF))}) by A27, A54, FUNCT_2:def_1; A57: rng FD = (rng F) \ {(F . (min* domF))} by Th54; let n be Nat; ::_thesis: ( n in rng FD implies G " {n} = G2 " {n} ) assume n in rng FD ; ::_thesis: G " {n} = G2 " {n} then not n in {(F . (min* domF))} by A57, XBOOLE_0:def_5; then n <> F . (min* domF) by TARSKI:def_1; hence G " {n} = G2 " {n} by A22, A56, Th54; ::_thesis: verum end; A58: for i, j being Nat st i in rng PG & j in rng PG & i < j holds min* (PG " {i}) < min* (PG " {j}) proof A59: for l being Nat st l in rF & l < F . (min* domF) holds ( (Orde . l) + 1 in rng Orde & (Orde . l) + 1 is Element of NAT & (Orde . l) + 1 <= Orde . (F . (min* domF)) & Orde . (F . (min* domF)) is Element of NAT & dom Orde = rF ) proof A60: Orde . (F . (min* domF)) < card rF by NAT_1:44; let l be Nat; ::_thesis: ( l in rF & l < F . (min* domF) implies ( (Orde . l) + 1 in rng Orde & (Orde . l) + 1 is Element of NAT & (Orde . l) + 1 <= Orde . (F . (min* domF)) & Orde . (F . (min* domF)) is Element of NAT & dom Orde = rF ) ) assume that A61: l in rF and A62: l < F . (min* domF) ; ::_thesis: ( (Orde . l) + 1 in rng Orde & (Orde . l) + 1 is Element of NAT & (Orde . l) + 1 <= Orde . (F . (min* domF)) & Orde . (F . (min* domF)) is Element of NAT & dom Orde = rF ) dom Orde = rF by FUNCT_2:def_1; then A63: Orde . l < Orde . (F . (min* domF)) by A9, A43, A61, A62; then (Orde . l) + 1 <= Orde . (F . (min* domF)) by NAT_1:13; then A64: (Orde . l) + 1 < card rF by A60, XXREAL_0:2; A65: card rF is Subset of NAT by Th8; A66: Orde . (F . (min* domF)) in card rF ; card rF = rng Orde by A42, FUNCT_2:def_3; hence ( (Orde . l) + 1 in rng Orde & (Orde . l) + 1 is Element of NAT & (Orde . l) + 1 <= Orde . (F . (min* domF)) & Orde . (F . (min* domF)) is Element of NAT & dom Orde = rF ) by A63, A66, A65, A64, FUNCT_2:def_1, NAT_1:13, NAT_1:44; ::_thesis: verum end; A67: for n, k being Nat st n in dom Orde & k in dom Orde & Orde . n < Orde . k holds n < k proof let n, k be Nat; ::_thesis: ( n in dom Orde & k in dom Orde & Orde . n < Orde . k implies n < k ) assume that A68: n in dom Orde and A69: k in dom Orde and A70: Orde . n < Orde . k ; ::_thesis: n < k assume n >= k ; ::_thesis: contradiction then n > k by A70, XXREAL_0:1; hence contradiction by A43, A68, A69, A70; ::_thesis: verum end; A71: for n, k being Nat st n in rng Orde & k in rng Orde & n < k holds Orde9 . n < Orde9 . k proof let n, k be Nat; ::_thesis: ( n in rng Orde & k in rng Orde & n < k implies Orde9 . n < Orde9 . k ) assume that A72: n in rng Orde and A73: k in rng Orde ; ::_thesis: ( not n < k or Orde9 . n < Orde9 . k ) A74: n = Orde . (Orde9 . n) by A42, A72, FUNCT_1:35; A75: dom Orde = rng Orde9 by A42, FUNCT_1:33; A76: k = Orde . (Orde9 . k) by A42, A73, FUNCT_1:35; assume A77: n < k ; ::_thesis: Orde9 . n < Orde9 . k A78: rng Orde = dom Orde9 by A42, FUNCT_1:33; then A79: Orde9 . n in dom Orde by A72, A75, FUNCT_1:def_3; Orde9 . k in dom Orde by A73, A78, A75, FUNCT_1:def_3; hence Orde9 . n < Orde9 . k by A67, A77, A74, A76, A79; ::_thesis: verum end; rng FD = (rng F) \ {(F . (min* domF))} by Th54; then A80: (rng FD) \/ {(F . (min* domF))} = rng G2 by A9, A38, ZFMISC_1:116; let i, j be Nat; ::_thesis: ( i in rng PG & j in rng PG & i < j implies min* (PG " {i}) < min* (PG " {j}) ) assume that A81: i in rng PG and A82: j in rng PG and A83: i < j ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) consider i1 being set such that A84: i1 in dom P1 and A85: i1 in rng G2 and A86: P1 " {i} = {i1} and A87: G2 " {i1} = PG " {i} by A81, Th61; consider j1 being set such that A88: j1 in dom P1 and A89: j1 in rng G2 and A90: P1 " {j} = {j1} and A91: G2 " {j1} = PG " {j} by A82, Th61; dom P1 = rF by FUNCT_2:def_1; then reconsider i1 = i1, j1 = j1 as Element of NAT by A84, A88; A92: i1 in P1 " {i} by A86, TARSKI:def_1; then P1 . i1 in {i} by FUNCT_1:def_7; then A93: P1 . i1 = i by TARSKI:def_1; A94: j1 in P1 " {j} by A90, TARSKI:def_1; then A95: P1 . j1 in {j} by FUNCT_1:def_7; then A96: P1 . j1 = j by TARSKI:def_1; A97: dom Orde = rF by FUNCT_2:def_1; now__::_thesis:_min*_(PG_"_{i})_<_min*_(PG_"_{j}) percases ( ( i1 < F . (min* domF) & j1 < F . (min* domF) ) or ( i1 = F . (min* domF) & j1 <> F . (min* domF) ) or ( i1 < F . (min* domF) & j1 = F . (min* domF) ) or ( i1 = F . (min* domF) & j1 = F . (min* domF) ) or ( i1 > F . (min* domF) & j1 > F . (min* domF) ) or ( i1 > F . (min* domF) & j1 = F . (min* domF) ) or ( i1 < F . (min* domF) & j1 > F . (min* domF) ) or ( i1 > F . (min* domF) & j1 < F . (min* domF) ) ) by XXREAL_0:1; supposeA98: ( i1 < F . (min* domF) & j1 < F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) A99: ( i1 in rng FD or i1 in {(F . (min* domF))} ) by A85, A80, XBOOLE_0:def_3; then A100: G " {i1} = PG " {i} by A55, A87, A98, TARSKI:def_1; A101: ( j1 in rng FD or j1 in {(F . (min* domF))} ) by A89, A80, XBOOLE_0:def_3; i1 < j1 proof assume i1 >= j1 ; ::_thesis: contradiction then i1 > j1 by A83, A93, A96, XXREAL_0:1; then Orde . i1 > Orde . j1 by A43, A92, A94, A97; then A102: (Orde . i1) + 1 > (Orde . j1) + 1 by XREAL_1:8; A103: (Orde . i1) + 1 in rng Orde by A84, A59, A98; A104: Orde9 . ((Orde . j1) + 1) = j by A44, A94, A96, A98; A105: (Orde . j1) + 1 in rng Orde by A88, A59, A98; Orde9 . ((Orde . i1) + 1) = i by A44, A92, A93, A98; hence contradiction by A83, A71, A102, A103, A105, A104; ::_thesis: verum end; then min* (G " {i1}) < min* (G " {j1}) by A19, A20, A98, A99, A101, TARSKI:def_1; hence min* (PG " {i}) < min* (PG " {j}) by A55, A91, A98, A101, A100, TARSKI:def_1; ::_thesis: verum end; supposeA106: ( i1 = F . (min* domF) & j1 <> F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) consider x being set such that A107: x in dom G2 and A108: G2 . x = j1 by A89, FUNCT_1:def_3; G2 . x in {j1} by A108, TARSKI:def_1; then PG " {j} is non empty Subset of NAT by A91, A107, FUNCT_1:def_7, XBOOLE_1:1; then A109: min* (PG " {j}) in PG " {j} by NAT_1:def_1; ( j1 in rng FD or j1 in {(F . (min* domF))} ) by A89, A80, XBOOLE_0:def_3; then A110: G " {j1} = PG " {j} by A55, A91, A106, TARSKI:def_1; then min* (PG " {j}) in dom F by A27, A109, XBOOLE_0:def_5; then A111: min* domF <= min* (PG " {j}) by NAT_1:def_1; A112: min* domF in domF by NAT_1:def_1; F . (min* domF) in {(F . (min* domF))} by TARSKI:def_1; then A113: min* domF in F " {(F . (min* domF))} by A112, FUNCT_1:def_7; then min* domF <> min* (PG " {j}) by A27, A110, A109, XBOOLE_0:def_5; then A114: min* domF < min* (PG " {j}) by A111, XXREAL_0:1; PG " {i} is Subset of NAT by XBOOLE_1:1; then min* (PG " {i}) <= min* domF by A28, A87, A106, A113, NAT_1:def_1; hence min* (PG " {i}) < min* (PG " {j}) by A114, XXREAL_0:2; ::_thesis: verum end; supposeA115: ( i1 < F . (min* domF) & j1 = F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) card rF = rng Orde by A42, FUNCT_2:def_3; then A116: 0 in rng Orde by NAT_1:44; (Orde . i1) + 1 in rng Orde by A84, A59, A115; then A117: Orde9 . ((Orde . i1) + 1) > Orde9 . 0 by A71, A116; A118: P1 . j1 = Orde9 . 0 by A44, A94, A115; Orde9 . ((Orde . i1) + 1) = i by A44, A92, A93, A115; hence min* (PG " {i}) < min* (PG " {j}) by A83, A95, A117, A118, TARSKI:def_1; ::_thesis: verum end; suppose ( i1 = F . (min* domF) & j1 = F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) hence min* (PG " {i}) < min* (PG " {j}) by A83, A95, A93, TARSKI:def_1; ::_thesis: verum end; supposeA119: ( i1 > F . (min* domF) & j1 > F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) A120: ( i1 in rng FD or i1 in {(F . (min* domF))} ) by A85, A80, XBOOLE_0:def_3; then A121: G " {i1} = PG " {i} by A55, A87, A119, TARSKI:def_1; A122: P1 . j1 = j1 by A44, A88, A119; A123: ( j1 in rng FD or j1 in {(F . (min* domF))} ) by A89, A80, XBOOLE_0:def_3; P1 . i1 = i1 by A44, A84, A119; then min* (G " {i1}) < min* (G " {j1}) by A19, A20, A83, A93, A96, A119, A122, A120, A123, TARSKI:def_1; hence min* (PG " {i}) < min* (PG " {j}) by A55, A91, A119, A123, A121, TARSKI:def_1; ::_thesis: verum end; supposeA124: ( i1 > F . (min* domF) & j1 = F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) A125: dom Orde = rF by FUNCT_2:def_1; rng (Orde ") = dom Orde by A42, FUNCT_1:33; then consider x being set such that A126: x in dom Orde9 and A127: Orde9 . x = i1 by A84, A125, FUNCT_1:def_3; A128: x in card rF by A126; card rF is Subset of NAT by Th8; then reconsider x = x as Element of NAT by A128; P1 . i1 = i1 by A44, A84, A124; then A129: Orde9 . x < Orde9 . 0 by A44, A83, A88, A93, A96, A124, A127; A130: card rF = rng Orde by A42, FUNCT_2:def_3; then 0 in rng Orde by NAT_1:44; then x <= 0 by A71, A126, A130, A129; hence min* (PG " {i}) < min* (PG " {j}) by A129; ::_thesis: verum end; supposeA131: ( i1 < F . (min* domF) & j1 > F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) A132: ( i1 in rng FD or i1 in {(F . (min* domF))} ) by A85, A80, XBOOLE_0:def_3; then A133: G " {i1} = PG " {i} by A55, A87, A131, TARSKI:def_1; A134: ( j1 in rng FD or j1 in {(F . (min* domF))} ) by A89, A80, XBOOLE_0:def_3; i1 < j1 by A131, XXREAL_0:2; then min* (G " {i1}) < min* (G " {j1}) by A19, A20, A131, A132, A134, TARSKI:def_1; hence min* (PG " {i}) < min* (PG " {j}) by A55, A91, A131, A134, A133, TARSKI:def_1; ::_thesis: verum end; supposeA135: ( i1 > F . (min* domF) & j1 < F . (min* domF) ) ; ::_thesis: min* (PG " {i}) < min* (PG " {j}) then dom Orde = rF by A88, A59; then A136: Orde . (F . (min* domF)) in rng Orde by A9, FUNCT_1:def_3; (Orde . j1) + 1 <= Orde . (F . (min* domF)) by A88, A59, A135; then A137: ( (Orde . j1) + 1 < Orde . (F . (min* domF)) or (Orde . j1) + 1 = Orde . (F . (min* domF)) ) by XXREAL_0:1; F . (min* domF) in dom Orde by A9, A88, A59, A135; then A138: Orde9 . (Orde . (F . (min* domF))) = F . (min* domF) by A42, FUNCT_1:34; A139: P1 . i1 = i1 by A44, A84, A135; A140: Orde9 . ((Orde . j1) + 1) = P1 . j1 by A44, A88, A135; (Orde . j1) + 1 in rng Orde by A88, A59, A135; then P1 . j1 <= F . (min* domF) by A71, A137, A136, A138, A140; hence min* (PG " {i}) < min* (PG " {j}) by A83, A93, A96, A135, A139, XXREAL_0:2; ::_thesis: verum end; end; end; hence min* (PG " {i}) < min* (PG " {j}) ; ::_thesis: verum end; not K is empty ; then A141: dom F = N by FUNCT_2:def_1; A142: for x being set st x in dom F holds F . x = P2 . (G2 . x) proof let x be set ; ::_thesis: ( x in dom F implies F . x = P2 . (G2 . x) ) assume A143: x in dom F ; ::_thesis: F . x = P2 . (G2 . x) now__::_thesis:_F_._x_=_P2_._(G2_._x) percases ( x in N \ dFD or x in dFD ) by A143, XBOOLE_0:def_5; supposeA144: x in N \ dFD ; ::_thesis: F . x = P2 . (G2 . x) then A145: not x in (dom F) \ (F " {(F . (min* domF))}) by A27, XBOOLE_0:def_5; x in dom F by A141, A144, XBOOLE_0:def_5; then x in F " {(F . (min* domF))} by A145, XBOOLE_0:def_5; then A146: F . x in {(F . (min* domF))} by FUNCT_1:def_7; P2 . (G2 . x) = F . (min* domF) by A22, A40, A144; hence F . x = P2 . (G2 . x) by A146, TARSKI:def_1; ::_thesis: verum end; supposeA147: x in dFD ; ::_thesis: F . x = P2 . (G2 . x) then A148: F . x = FD . x by FUNCT_1:47; A149: FD . x = P . (G . x) by A18, A147, FUNCT_1:12; A150: dom P = rng FD by FUNCT_2:def_1; A151: x in dom G by A147, FUNCT_2:def_1; then A152: G . x in rng FD by A19, FUNCT_1:def_3; G . x = G2 . x by A22, A151, FUNCT_1:47; hence F . x = P2 . (G2 . x) by A39, A148, A149, A152, A150, FUNCT_1:47; ::_thesis: verum end; end; end; hence F . x = P2 . (G2 . x) ; ::_thesis: verum end; A153: dom G2 = N by FUNCT_2:def_1; for x being set holds ( x in dom F iff ( x in dom G2 & G2 . x in dom P2 ) ) proof let x be set ; ::_thesis: ( x in dom F iff ( x in dom G2 & G2 . x in dom P2 ) ) thus ( x in dom F implies ( x in dom G2 & G2 . x in dom P2 ) ) ::_thesis: ( x in dom G2 & G2 . x in dom P2 implies x in dom F ) proof assume A154: x in dom F ; ::_thesis: ( x in dom G2 & G2 . x in dom P2 ) then dom P2 = rng F by A153, FUNCT_2:def_1; hence ( x in dom G2 & G2 . x in dom P2 ) by A38, A153, A154, FUNCT_1:def_3; ::_thesis: verum end; thus ( x in dom G2 & G2 . x in dom P2 implies x in dom F ) by A141; ::_thesis: verum end; then F = P2 * G2 by A142, FUNCT_1:10; then A155: F = P21 * PG by A47, RELAT_1:36; rng P1 = rF by FUNCT_2:def_3; then rng (P1 * G2) = rF by A38, A45, FUNCT_2:14; hence ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) by A155, A58; ::_thesis: verum end; end; end; hence ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) ; ::_thesis: verum end; end; end; hence ex P being Permutation of (rng F) ex G being Function of N,K st ( F = P * G & rng F = rng G & ( for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) ) ) ; ::_thesis: verum end; A156: for F being Function st rng F is finite holds S2[F] from STIRL2_1:sch_7(A1, A4); let F be Function of Ne,Ke; ::_thesis: ( rng F is finite implies ex I being Function of Ne,Ke ex P being Permutation of (rng F) st ( F = P * I & rng F = rng I & I is "increasing ) ) assume rng F is finite ; ::_thesis: ex I being Function of Ne,Ke ex P being Permutation of (rng F) st ( F = P * I & rng F = rng I & I is "increasing ) then consider P being Permutation of (rng F), G being Function of Ne,Ke such that A157: F = P * G and A158: rng F = rng G and A159: for i, j being Nat st i in rng G & j in rng G & i < j holds min* (G " {i}) < min* (G " {j}) by A156; G is "increasing by A159, Def3; hence ex I being Function of Ne,Ke ex P being Permutation of (rng F) st ( F = P * I & rng F = rng I & I is "increasing ) by A157, A158; ::_thesis: verum end; theorem Th64: :: STIRL2_1:64 for Ne, Ke, Me being Subset of NAT for F being Function of Ne,Ke st rng F is finite holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) proof let Ne, Ke, Me be Subset of NAT; ::_thesis: for F being Function of Ne,Ke st rng F is finite holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) defpred S1[ set , Function] means $1 = $2 . (min* (dom $2)); defpred S2[ set ] means for Ne, Ke, Me being Subset of NAT for F being Function of Ne,Ke st F = $1 holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ); A1: S2[ {} ] proof let Ne, Ke, Me be Subset of NAT; ::_thesis: for F being Function of Ne,Ke st F = {} holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let F be Function of Ne,Ke; ::_thesis: ( F = {} implies for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) ) assume A2: F = {} ; ::_thesis: for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let I1, I2 be Function of Ne,Me; ::_thesis: for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let P1, P2 be Function; ::_thesis: ( P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing implies ( P1 = P2 & I1 = I2 ) ) assume that P1 is one-to-one and P2 is one-to-one and A3: rng I1 = rng I2 and A4: rng I1 = dom P1 and A5: dom P1 = dom P2 and A6: F = P1 * I1 and F = P2 * I2 and I1 is "increasing and I2 is "increasing ; ::_thesis: ( P1 = P2 & I1 = I2 ) dom I1 = {} by A2, A4, A6, RELAT_1:27, RELAT_1:38; then A7: I1 = {} ; rng P1 = {} by A2, A4, A6, RELAT_1:28, RELAT_1:38; then P1 = {} ; hence ( P1 = P2 & I1 = I2 ) by A3, A5, A7; ::_thesis: verum end; A8: for F being Function st ( for x being set st x in rng F & S1[x,F] holds S2[F | ((dom F) \ (F " {x}))] ) holds S2[F] proof let F9 be Function; ::_thesis: ( ( for x being set st x in rng F9 & S1[x,F9] holds S2[F9 | ((dom F9) \ (F9 " {x}))] ) implies S2[F9] ) assume A9: for x being set st x in rng F9 & S1[x,F9] holds S2[F9 | ((dom F9) \ (F9 " {x}))] ; ::_thesis: S2[F9] now__::_thesis:_S2[F9] percases ( F9 = {} or F9 <> {} ) ; suppose F9 = {} ; ::_thesis: S2[F9] hence S2[F9] by A1; ::_thesis: verum end; supposeA10: F9 <> {} ; ::_thesis: for Ne, Ke, Me being Subset of NAT for F being Function of Ne,Ke st F = F9 holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let Ne, Ke, Me be Subset of NAT; ::_thesis: for F being Function of Ne,Ke st F = F9 holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let F be Function of Ne,Ke; ::_thesis: ( F = F9 implies for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) ) assume A11: F = F9 ; ::_thesis: for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) not Ke is empty by A10, A11; then reconsider domF = dom F as non empty Subset of NAT by A10, A11, FUNCT_2:def_1; set m = min* (dom F); let I1, I2 be Function of Ne,Me; ::_thesis: for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let P1, P2 be Function; ::_thesis: ( P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing implies ( P1 = P2 & I1 = I2 ) ) assume that A12: P1 is one-to-one and A13: P2 is one-to-one and A14: rng I1 = rng I2 and A15: rng I1 = dom P1 and A16: dom P1 = dom P2 and A17: F = P1 * I1 and A18: F = P2 * I2 and A19: I1 is "increasing and A20: I2 is "increasing ; ::_thesis: ( P1 = P2 & I1 = I2 ) dom I1 = dom F by A15, A17, RELAT_1:27; then A21: min* (rng I1) = I1 . (min* (dom F)) by A19, Th62; reconsider I = (rng I1) \ {(I1 . (min* (dom F)))} as Subset of NAT by XBOOLE_1:1; reconsider D = (dom F) \ (F " {(F . (min* (dom F)))}) as Subset of NAT by XBOOLE_1:1; A22: for I being Function of Ne,Me for P being Function st P is one-to-one & rng I = dom P & F = P * I & I is "increasing holds ( dom (I | D) = D & rng (I | D) = (rng I) \ {(I . (min* (dom F)))} & dom (P | ((rng I) \ {(I . (min* (dom F)))})) = (rng I) \ {(I . (min* (dom F)))} & F | D = (P | ((rng I) \ {(I . (min* (dom F)))})) * (I | D) & P | ((rng I) \ {(I . (min* (dom F)))}) is one-to-one & ( for M being Subset of NAT st M = (rng I) \ {(I . (min* (dom F)))} holds for I1 being Function of D,M st I1 = I | D holds I1 is "increasing ) ) proof A23: F . (min* (dom F)) in {(F . (min* (dom F)))} by TARSKI:def_1; let I be Function of Ne,Me; ::_thesis: for P being Function st P is one-to-one & rng I = dom P & F = P * I & I is "increasing holds ( dom (I | D) = D & rng (I | D) = (rng I) \ {(I . (min* (dom F)))} & dom (P | ((rng I) \ {(I . (min* (dom F)))})) = (rng I) \ {(I . (min* (dom F)))} & F | D = (P | ((rng I) \ {(I . (min* (dom F)))})) * (I | D) & P | ((rng I) \ {(I . (min* (dom F)))}) is one-to-one & ( for M being Subset of NAT st M = (rng I) \ {(I . (min* (dom F)))} holds for I1 being Function of D,M st I1 = I | D holds I1 is "increasing ) ) let P be Function; ::_thesis: ( P is one-to-one & rng I = dom P & F = P * I & I is "increasing implies ( dom (I | D) = D & rng (I | D) = (rng I) \ {(I . (min* (dom F)))} & dom (P | ((rng I) \ {(I . (min* (dom F)))})) = (rng I) \ {(I . (min* (dom F)))} & F | D = (P | ((rng I) \ {(I . (min* (dom F)))})) * (I | D) & P | ((rng I) \ {(I . (min* (dom F)))}) is one-to-one & ( for M being Subset of NAT st M = (rng I) \ {(I . (min* (dom F)))} holds for I1 being Function of D,M st I1 = I | D holds I1 is "increasing ) ) ) assume that A24: P is one-to-one and A25: rng I = dom P and A26: F = P * I and A27: I is "increasing ; ::_thesis: ( dom (I | D) = D & rng (I | D) = (rng I) \ {(I . (min* (dom F)))} & dom (P | ((rng I) \ {(I . (min* (dom F)))})) = (rng I) \ {(I . (min* (dom F)))} & F | D = (P | ((rng I) \ {(I . (min* (dom F)))})) * (I | D) & P | ((rng I) \ {(I . (min* (dom F)))}) is one-to-one & ( for M being Subset of NAT st M = (rng I) \ {(I . (min* (dom F)))} holds for I1 being Function of D,M st I1 = I | D holds I1 is "increasing ) ) A28: (dom P) /\ ((rng I) \ {(I . (min* (dom F)))}) = (rng I) \ {(I . (min* (dom F)))} by A25, XBOOLE_1:28, XBOOLE_1:36; min* (dom F) in domF by NAT_1:def_1; then F . (min* (dom F)) in rng F by FUNCT_1:def_3; then consider x being set such that x in dom P and x in rng I and P " {(F . (min* (dom F)))} = {x} and A29: I " {x} = F " {(F . (min* (dom F)))} by A24, A26, Th61; A30: dom (P | ((rng I) \ {(I . (min* (dom F)))})) = (dom P) /\ ((rng I) \ {(I . (min* (dom F)))}) by RELAT_1:61; A31: dom F = dom I by A25, A26, RELAT_1:27; then A32: (dom I) /\ D = D by XBOOLE_1:28, XBOOLE_1:36; min* (dom F) in domF by NAT_1:def_1; then min* (dom F) in I " {x} by A29, A23, FUNCT_1:def_7; then I . (min* (dom F)) in {x} by FUNCT_1:def_7; then A33: I . (min* (dom F)) = x by TARSKI:def_1; A34: for M being Subset of NAT st M = (rng I) \ {(I . (min* (dom F)))} holds for I1 being Function of D,M st I1 = I | D holds I1 is "increasing proof let M be Subset of NAT; ::_thesis: ( M = (rng I) \ {(I . (min* (dom F)))} implies for I1 being Function of D,M st I1 = I | D holds I1 is "increasing ) assume M = (rng I) \ {(I . (min* (dom F)))} ; ::_thesis: for I1 being Function of D,M st I1 = I | D holds I1 is "increasing let I1 be Function of D,M; ::_thesis: ( I1 = I | D implies I1 is "increasing ) assume A35: I1 = I | D ; ::_thesis: I1 is "increasing A36: rng I1 = (rng I) \ {(I . (min* (dom F)))} by A29, A33, A31, A35, Th54; let l be Nat; :: according to STIRL2_1:def_3 ::_thesis: for m being Nat st l in rng I1 & m in rng I1 & l < m holds min* (I1 " {l}) < min* (I1 " {m}) let n be Nat; ::_thesis: ( l in rng I1 & n in rng I1 & l < n implies min* (I1 " {l}) < min* (I1 " {n}) ) assume that A37: l in rng I1 and A38: n in rng I1 and A39: l < n ; ::_thesis: min* (I1 " {l}) < min* (I1 " {n}) A40: n in rng I by A38, A36, ZFMISC_1:56; n <> I . (min* (dom F)) by A38, A36, ZFMISC_1:56; then A41: I1 " {n} = I " {n} by A29, A33, A31, A35, Th54; l <> I . (min* (dom F)) by A37, A36, ZFMISC_1:56; then A42: I1 " {l} = I " {l} by A29, A33, A31, A35, Th54; l in rng I by A37, A36, ZFMISC_1:56; hence min* (I1 " {l}) < min* (I1 " {n}) by A27, A39, A40, A42, A41, Def3; ::_thesis: verum end; set rI = (rng I) \ {(I . (min* (dom F)))}; A43: dom (I | D) = (dom I) /\ D by RELAT_1:61; A44: rng (I | D) = (rng I) \ {(I . (min* (dom F)))} by A29, A33, A31, Th54; A45: for x being set st x in dom (F | D) holds (F | D) . x = (P | ((rng I) \ {(I . (min* (dom F)))})) . ((I | D) . x) proof let x be set ; ::_thesis: ( x in dom (F | D) implies (F | D) . x = (P | ((rng I) \ {(I . (min* (dom F)))})) . ((I | D) . x) ) assume A46: x in dom (F | D) ; ::_thesis: (F | D) . x = (P | ((rng I) \ {(I . (min* (dom F)))})) . ((I | D) . x) A47: x in (dom F) /\ D by A46, RELAT_1:61; then A48: x in dom F by XBOOLE_0:def_4; (I | D) . x in dom (P | ((rng I) \ {(I . (min* (dom F)))})) by A31, A43, A30, A28, A44, A47, FUNCT_1:def_3; then A49: (P | ((rng I) \ {(I . (min* (dom F)))})) . ((I | D) . x) = P . ((I | D) . x) by FUNCT_1:47; A50: (F | D) . x = F . x by A46, FUNCT_1:47; I . x = (I | D) . x by A31, A43, A47, FUNCT_1:47; hence (F | D) . x = (P | ((rng I) \ {(I . (min* (dom F)))})) . ((I | D) . x) by A26, A48, A49, A50, FUNCT_1:12; ::_thesis: verum end; (dom F) /\ D = D by XBOOLE_1:28, XBOOLE_1:36; then dom (F | D) = D by RELAT_1:61; then for x being set holds ( x in dom (F | D) iff ( x in dom (I | D) & (I | D) . x in dom (P | ((rng I) \ {(I . (min* (dom F)))})) ) ) by A43, A32, A30, A28, A44, FUNCT_1:def_3; hence ( dom (I | D) = D & rng (I | D) = (rng I) \ {(I . (min* (dom F)))} & dom (P | ((rng I) \ {(I . (min* (dom F)))})) = (rng I) \ {(I . (min* (dom F)))} & F | D = (P | ((rng I) \ {(I . (min* (dom F)))})) * (I | D) & P | ((rng I) \ {(I . (min* (dom F)))}) is one-to-one & ( for M being Subset of NAT st M = (rng I) \ {(I . (min* (dom F)))} holds for I1 being Function of D,M st I1 = I | D holds I1 is "increasing ) ) by A24, A29, A33, A31, A32, A28, A45, A34, Th54, FUNCT_1:10, FUNCT_1:52, RELAT_1:61; ::_thesis: verum end; then A51: P1 | I is one-to-one by A12, A15, A17, A19; dom I2 = dom F by A14, A15, A16, A18, RELAT_1:27; then A52: min* (rng I2) = I2 . (min* (dom F)) by A20, Th62; then A53: P2 | I is one-to-one by A13, A14, A15, A16, A18, A20, A22, A21; A54: dom (I2 | D) = D by A13, A14, A15, A16, A18, A20, A22; A55: dom (I1 | D) = D by A12, A15, A17, A19, A22; A56: rng (I1 | D) = I by A12, A15, A17, A19, A22; rng (I2 | D) = I by A13, A14, A15, A16, A18, A20, A22, A21, A52; then reconsider I1D = I1 | D, I2D = I2 | D as Function of D,I by A55, A54, A56, FUNCT_2:1; A57: I2D is "increasing by A13, A14, A15, A16, A18, A20, A22, A21, A52; A58: rng I1D = I by A12, A15, A17, A19, A22; then A59: rng I1D = dom (P1 | I) by A12, A15, A17, A19, A22; reconsider rFD = rng (F | D) as Subset of NAT by XBOOLE_1:1; (dom F) /\ D = D by XBOOLE_1:28, XBOOLE_1:36; then dom (F | D) = D by RELAT_1:61; then reconsider FD = F | D as Function of D,rFD by FUNCT_2:1; A60: FD = (P1 | I) * I1D by A12, A15, A17, A19, A22; A61: FD = (P2 | I) * I2D by A13, A14, A15, A16, A18, A20, A22, A21, A52; min* (dom F) in domF by NAT_1:def_1; then A62: F . (min* (dom F)) in rng F by FUNCT_1:def_3; dom (P1 | I) = I by A12, A15, A17, A19, A22; then A63: dom (P1 | I) = dom (P2 | I) by A13, A14, A15, A16, A18, A20, A22, A21, A52; A64: I1D is "increasing by A12, A15, A17, A19, A22; A65: rng I1D = rng I2D by A13, A14, A15, A16, A18, A20, A22, A21, A52, A58; for x being set st x in dom P1 holds P1 . x = P2 . x proof A66: min* (dom F) in domF by NAT_1:def_1; dom I1 = dom F by A15, A17, RELAT_1:27; then I1 . (min* (dom F)) in rng I1 by A66, FUNCT_1:def_3; then A67: dom P1 = I \/ {(I1 . (min* (dom F)))} by A15, ZFMISC_1:116; let x be set ; ::_thesis: ( x in dom P1 implies P1 . x = P2 . x ) assume A68: x in dom P1 ; ::_thesis: P1 . x = P2 . x now__::_thesis:_P1_._x_=_P2_._x percases ( x in I or x in {(I1 . (min* (dom F)))} ) by A68, A67, XBOOLE_0:def_3; supposeA69: x in I ; ::_thesis: P1 . x = P2 . x (dom P1) /\ I = I by A15, XBOOLE_1:28, XBOOLE_1:36; then x in dom (P1 | I) by A69, RELAT_1:61; then A70: (P1 | I) . x = P1 . x by FUNCT_1:47; (dom P2) /\ I = I by A15, A16, XBOOLE_1:28, XBOOLE_1:36; then x in dom (P2 | I) by A69, RELAT_1:61; then (P2 | I) . x = P2 . x by FUNCT_1:47; hence P1 . x = P2 . x by A9, A11, A62, A51, A53, A65, A59, A63, A60, A61, A64, A57, A70; ::_thesis: verum end; supposeA71: x in {(I1 . (min* (dom F)))} ; ::_thesis: P1 . x = P2 . x A72: min* (dom F) in domF by NAT_1:def_1; A73: x = I1 . (min* (dom F)) by A71, TARSKI:def_1; then F . (min* (dom F)) = P1 . x by A17, A72, FUNCT_1:12; hence P1 . x = P2 . x by A14, A18, A21, A52, A73, A72, FUNCT_1:12; ::_thesis: verum end; end; end; hence P1 . x = P2 . x ; ::_thesis: verum end; then A74: P1 = P2 by A16, FUNCT_1:def_11; I2 is Function of (dom I2),(rng I2) by FUNCT_2:1; then A75: I2 = (id (rng I2)) * I2 by FUNCT_2:17; I1 is Function of (dom I1),(rng I1) by FUNCT_2:1; then A76: I1 = (id (rng I1)) * I1 by FUNCT_2:17; (P1 ") * P1 = id (dom P1) by A12, FUNCT_1:39; then A77: I1 = (P1 ") * (P1 * I1) by A15, A76, RELAT_1:36; (P2 ") * P2 = id (dom P2) by A13, FUNCT_1:39; hence ( P1 = P2 & I1 = I2 ) by A14, A15, A17, A18, A74, A75, A77, RELAT_1:36; ::_thesis: verum end; end; end; hence S2[F9] ; ::_thesis: verum end; for F being Function st rng F is finite holds S2[F] from STIRL2_1:sch_7(A1, A8); hence for F being Function of Ne,Ke st rng F is finite holds for I1, I2 being Function of Ne,Me for P1, P2 being Function st P1 is one-to-one & P2 is one-to-one & rng I1 = rng I2 & rng I1 = dom P1 & dom P1 = dom P2 & F = P1 * I1 & F = P2 * I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) ; ::_thesis: verum end; theorem :: STIRL2_1:65 for Ne, Ke being Subset of NAT for F being Function of Ne,Ke st rng F is finite holds for I1, I2 being Function of Ne,Ke for P1, P2 being Permutation of (rng F) st F = P1 * I1 & F = P2 * I2 & rng F = rng I1 & rng F = rng I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) proof let Ne, Ke be Subset of NAT; ::_thesis: for F being Function of Ne,Ke st rng F is finite holds for I1, I2 being Function of Ne,Ke for P1, P2 being Permutation of (rng F) st F = P1 * I1 & F = P2 * I2 & rng F = rng I1 & rng F = rng I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let F be Function of Ne,Ke; ::_thesis: ( rng F is finite implies for I1, I2 being Function of Ne,Ke for P1, P2 being Permutation of (rng F) st F = P1 * I1 & F = P2 * I2 & rng F = rng I1 & rng F = rng I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) ) assume A1: rng F is finite ; ::_thesis: for I1, I2 being Function of Ne,Ke for P1, P2 being Permutation of (rng F) st F = P1 * I1 & F = P2 * I2 & rng F = rng I1 & rng F = rng I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let I1, I2 be Function of Ne,Ke; ::_thesis: for P1, P2 being Permutation of (rng F) st F = P1 * I1 & F = P2 * I2 & rng F = rng I1 & rng F = rng I2 & I1 is "increasing & I2 is "increasing holds ( P1 = P2 & I1 = I2 ) let P1, P2 be Permutation of (rng F); ::_thesis: ( F = P1 * I1 & F = P2 * I2 & rng F = rng I1 & rng F = rng I2 & I1 is "increasing & I2 is "increasing implies ( P1 = P2 & I1 = I2 ) ) assume that A2: F = P1 * I1 and A3: F = P2 * I2 and A4: rng F = rng I1 and A5: rng F = rng I2 and A6: I1 is "increasing and A7: I2 is "increasing ; ::_thesis: ( P1 = P2 & I1 = I2 ) A8: ( rng F = {} implies rng F = {} ) ; then A9: dom P2 = rng F by FUNCT_2:def_1; dom P1 = rng F by A8, FUNCT_2:def_1; hence ( P1 = P2 & I1 = I2 ) by A1, A2, A3, A4, A5, A6, A7, A9, Th64; ::_thesis: verum end; theorem :: STIRL2_1:66 for D being non empty set for F being XFinSequence of D st ( for i being Nat st i in dom F holds F . i is finite ) & ( for i, j being Nat st i in dom F & j in dom F & i <> j holds F . i misses F . j ) holds ex CardF being XFinSequence of NAT st ( dom CardF = dom F & ( for i being Nat st i in dom CardF holds CardF . i = card (F . i) ) & card (union (rng F)) = Sum CardF ) by Lm2;