Metamath Proof Explorer


Theorem indcardi

Description: Indirect strong induction on the cardinality of a finite or numerable set. (Contributed by Stefan O'Rear, 24-Aug-2015)

Ref Expression
Hypotheses indcardi.a ( 𝜑𝐴𝑉 )
indcardi.b ( 𝜑𝑇 ∈ dom card )
indcardi.c ( ( 𝜑𝑅𝑇 ∧ ∀ 𝑦 ( 𝑆𝑅𝜒 ) ) → 𝜓 )
indcardi.d ( 𝑥 = 𝑦 → ( 𝜓𝜒 ) )
indcardi.e ( 𝑥 = 𝐴 → ( 𝜓𝜃 ) )
indcardi.f ( 𝑥 = 𝑦𝑅 = 𝑆 )
indcardi.g ( 𝑥 = 𝐴𝑅 = 𝑇 )
Assertion indcardi ( 𝜑𝜃 )

Proof

Step Hyp Ref Expression
1 indcardi.a ( 𝜑𝐴𝑉 )
2 indcardi.b ( 𝜑𝑇 ∈ dom card )
3 indcardi.c ( ( 𝜑𝑅𝑇 ∧ ∀ 𝑦 ( 𝑆𝑅𝜒 ) ) → 𝜓 )
4 indcardi.d ( 𝑥 = 𝑦 → ( 𝜓𝜒 ) )
5 indcardi.e ( 𝑥 = 𝐴 → ( 𝜓𝜃 ) )
6 indcardi.f ( 𝑥 = 𝑦𝑅 = 𝑆 )
7 indcardi.g ( 𝑥 = 𝐴𝑅 = 𝑇 )
8 domrefg ( 𝑇 ∈ dom card → 𝑇𝑇 )
9 2 8 syl ( 𝜑𝑇𝑇 )
10 cardon ( card ‘ 𝑇 ) ∈ On
11 10 a1i ( 𝜑 → ( card ‘ 𝑇 ) ∈ On )
12 simpl1 ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) ) ∧ 𝑅𝑇 ) → 𝜑 )
13 simpr ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) ) ∧ 𝑅𝑇 ) → 𝑅𝑇 )
14 simpr ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝑆𝑅 )
15 simpl1 ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝜑 )
16 15 2 syl ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝑇 ∈ dom card )
17 sdomdom ( 𝑆𝑅𝑆𝑅 )
18 simpl3 ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝑅𝑇 )
19 domtr ( ( 𝑆𝑅𝑅𝑇 ) → 𝑆𝑇 )
20 17 18 19 syl2an2 ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝑆𝑇 )
21 numdom ( ( 𝑇 ∈ dom card ∧ 𝑆𝑇 ) → 𝑆 ∈ dom card )
22 16 20 21 syl2anc ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝑆 ∈ dom card )
23 numdom ( ( 𝑇 ∈ dom card ∧ 𝑅𝑇 ) → 𝑅 ∈ dom card )
24 16 18 23 syl2anc ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → 𝑅 ∈ dom card )
25 cardsdom2 ( ( 𝑆 ∈ dom card ∧ 𝑅 ∈ dom card ) → ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) ↔ 𝑆𝑅 ) )
26 22 24 25 syl2anc ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) ↔ 𝑆𝑅 ) )
27 14 26 mpbird ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) )
28 id ( ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) )
29 28 com3l ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇 → ( ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → 𝜒 ) ) )
30 27 20 29 sylc ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) ∧ 𝑆𝑅 ) → ( ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → 𝜒 ) )
31 30 ex ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) → ( 𝑆𝑅 → ( ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → 𝜒 ) ) )
32 31 com23 ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) → ( ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → ( 𝑆𝑅𝜒 ) ) )
33 32 alimdv ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ 𝑅𝑇 ) → ( ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → ∀ 𝑦 ( 𝑆𝑅𝜒 ) ) )
34 33 3exp ( 𝜑 → ( ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) → ( 𝑅𝑇 → ( ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → ∀ 𝑦 ( 𝑆𝑅𝜒 ) ) ) ) )
35 34 com34 ( 𝜑 → ( ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) → ( ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) → ( 𝑅𝑇 → ∀ 𝑦 ( 𝑆𝑅𝜒 ) ) ) ) )
36 35 3imp1 ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) ) ∧ 𝑅𝑇 ) → ∀ 𝑦 ( 𝑆𝑅𝜒 ) )
37 12 13 36 3 syl3anc ( ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) ) ∧ 𝑅𝑇 ) → 𝜓 )
38 37 ex ( ( 𝜑 ∧ ( ( card ‘ 𝑅 ) ∈ On ∧ ( card ‘ 𝑅 ) ⊆ ( card ‘ 𝑇 ) ) ∧ ∀ 𝑦 ( ( card ‘ 𝑆 ) ∈ ( card ‘ 𝑅 ) → ( 𝑆𝑇𝜒 ) ) ) → ( 𝑅𝑇𝜓 ) )
39 6 breq1d ( 𝑥 = 𝑦 → ( 𝑅𝑇𝑆𝑇 ) )
40 39 4 imbi12d ( 𝑥 = 𝑦 → ( ( 𝑅𝑇𝜓 ) ↔ ( 𝑆𝑇𝜒 ) ) )
41 7 breq1d ( 𝑥 = 𝐴 → ( 𝑅𝑇𝑇𝑇 ) )
42 41 5 imbi12d ( 𝑥 = 𝐴 → ( ( 𝑅𝑇𝜓 ) ↔ ( 𝑇𝑇𝜃 ) ) )
43 6 fveq2d ( 𝑥 = 𝑦 → ( card ‘ 𝑅 ) = ( card ‘ 𝑆 ) )
44 7 fveq2d ( 𝑥 = 𝐴 → ( card ‘ 𝑅 ) = ( card ‘ 𝑇 ) )
45 1 11 38 40 42 43 44 tfisi ( 𝜑 → ( 𝑇𝑇𝜃 ) )
46 9 45 mpd ( 𝜑𝜃 )