Metamath Proof Explorer


Theorem bnj517

Description: Technical lemma for bnj518 . This lemma may no longer be used or have become an indirect lemma of the theorem in question (i.e. a lemma of a lemma... of the theorem). (Contributed by Jonathan Ben-Naim, 3-Jun-2011) (Proof shortened by Mario Carneiro, 22-Dec-2016) (New usage is discouraged.)

Ref Expression
Hypotheses bnj517.1 ⊢ ( 𝜑 ↔ ( 𝐹 ‘ ∅ ) = pred ( 𝑋 , 𝐴 , 𝑅 ) )
bnj517.2 ⊢ ( 𝜓 ↔ ∀ 𝑖 ∈ ω ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) )
Assertion bnj517 ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) → ∀ 𝑛 ∈ 𝑁 ( 𝐹 ‘ 𝑛 ) ⊆ 𝐴 )

Proof

Step Hyp Ref Expression
1 bnj517.1 ⊢ ( 𝜑 ↔ ( 𝐹 ‘ ∅ ) = pred ( 𝑋 , 𝐴 , 𝑅 ) )
2 bnj517.2 ⊢ ( 𝜓 ↔ ∀ 𝑖 ∈ ω ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) )
3 fveq2 ⊢ ( 𝑚 = ∅ → ( 𝐹 ‘ 𝑚 ) = ( 𝐹 ‘ ∅ ) )
4 simpl2 ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → 𝜑 )
5 4 1 sylib ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → ( 𝐹 ‘ ∅ ) = pred ( 𝑋 , 𝐴 , 𝑅 ) )
6 3 5 sylan9eqr ⊢ ( ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) ∧ 𝑚 = ∅ ) → ( 𝐹 ‘ 𝑚 ) = pred ( 𝑋 , 𝐴 , 𝑅 ) )
7 bnj213 ⊢ pred ( 𝑋 , 𝐴 , 𝑅 ) ⊆ 𝐴
8 6 7 eqsstrdi ⊢ ( ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) ∧ 𝑚 = ∅ ) → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 )
9 r19.29r ⊢ ( ( ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 ∧ ∀ 𝑖 ∈ ω ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) ) → ∃ 𝑖 ∈ ω ( 𝑚 = suc 𝑖 ∧ ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) ) )
10 eleq1 ⊢ ( 𝑚 = suc 𝑖 → ( 𝑚 ∈ 𝑁 ↔ suc 𝑖 ∈ 𝑁 ) )
11 10 biimpd ⊢ ( 𝑚 = suc 𝑖 → ( 𝑚 ∈ 𝑁 → suc 𝑖 ∈ 𝑁 ) )
12 fveqeq2 ⊢ ( 𝑚 = suc 𝑖 → ( ( 𝐹 ‘ 𝑚 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ↔ ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) )
13 bnj213 ⊢ pred ( 𝑦 , 𝐴 , 𝑅 ) ⊆ 𝐴
14 13 rgenw ⊢ ∀ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ⊆ 𝐴
15 iunss ⊢ ( ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ⊆ 𝐴 ↔ ∀ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ⊆ 𝐴 )
16 14 15 mpbir ⊢ ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ⊆ 𝐴
17 sseq1 ⊢ ( ( 𝐹 ‘ 𝑚 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) → ( ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ↔ ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ⊆ 𝐴 ) )
18 16 17 mpbiri ⊢ ( ( 𝐹 ‘ 𝑚 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 )
19 12 18 biimtrrdi ⊢ ( 𝑚 = suc 𝑖 → ( ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) )
20 11 19 imim12d ⊢ ( 𝑚 = suc 𝑖 → ( ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) → ( 𝑚 ∈ 𝑁 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) ) )
21 20 imp ⊢ ( ( 𝑚 = suc 𝑖 ∧ ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) ) → ( 𝑚 ∈ 𝑁 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) )
22 21 rexlimivw ⊢ ( ∃ 𝑖 ∈ ω ( 𝑚 = suc 𝑖 ∧ ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) ) → ( 𝑚 ∈ 𝑁 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) )
23 9 22 syl ⊢ ( ( ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 ∧ ∀ 𝑖 ∈ ω ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) ) → ( 𝑚 ∈ 𝑁 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) )
24 23 ex ⊢ ( ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 → ( ∀ 𝑖 ∈ ω ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) → ( 𝑚 ∈ 𝑁 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) ) )
25 24 com3l ⊢ ( ∀ 𝑖 ∈ ω ( suc 𝑖 ∈ 𝑁 → ( 𝐹 ‘ suc 𝑖 ) = ∪ 𝑦 ∈ ( 𝐹 ‘ 𝑖 ) pred ( 𝑦 , 𝐴 , 𝑅 ) ) → ( 𝑚 ∈ 𝑁 → ( ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) ) )
26 2 25 sylbi ⊢ ( 𝜓 → ( 𝑚 ∈ 𝑁 → ( ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) ) )
27 26 3ad2ant3 ⊢ ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) → ( 𝑚 ∈ 𝑁 → ( ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ) ) )
28 27 imp31 ⊢ ( ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) ∧ ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 ) → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 )
29 simpr ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → 𝑚 ∈ 𝑁 )
30 simpl1 ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → 𝑁 ∈ ω )
31 elnn ⊢ ( ( 𝑚 ∈ 𝑁 ∧ 𝑁 ∈ ω ) → 𝑚 ∈ ω )
32 29 30 31 syl2anc ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → 𝑚 ∈ ω )
33 nn0suc ⊢ ( 𝑚 ∈ ω → ( 𝑚 = ∅ ∨ ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 ) )
34 32 33 syl ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → ( 𝑚 = ∅ ∨ ∃ 𝑖 ∈ ω 𝑚 = suc 𝑖 ) )
35 8 28 34 mpjaodan ⊢ ( ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) ∧ 𝑚 ∈ 𝑁 ) → ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 )
36 35 ralrimiva ⊢ ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) → ∀ 𝑚 ∈ 𝑁 ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 )
37 fveq2 ⊢ ( 𝑚 = 𝑛 → ( 𝐹 ‘ 𝑚 ) = ( 𝐹 ‘ 𝑛 ) )
38 37 sseq1d ⊢ ( 𝑚 = 𝑛 → ( ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ↔ ( 𝐹 ‘ 𝑛 ) ⊆ 𝐴 ) )
39 38 cbvralvw ⊢ ( ∀ 𝑚 ∈ 𝑁 ( 𝐹 ‘ 𝑚 ) ⊆ 𝐴 ↔ ∀ 𝑛 ∈ 𝑁 ( 𝐹 ‘ 𝑛 ) ⊆ 𝐴 )
40 36 39 sylib ⊢ ( ( 𝑁 ∈ ω ∧ 𝜑 ∧ 𝜓 ) → ∀ 𝑛 ∈ 𝑁 ( 𝐹 ‘ 𝑛 ) ⊆ 𝐴 )