Metamath Proof Explorer


Theorem mptnn0fsupp

Description: A mapping from the nonnegative integers is finitely supported under certain conditions. (Contributed by AV, 5-Oct-2019) (Revised by AV, 23-Dec-2019)

Ref Expression
Hypotheses mptnn0fsupp.0 ⊢ φ → 0 ˙ ∈ V
mptnn0fsupp.c ⊢ φ ∧ k ∈ ℕ 0 → C ∈ B
mptnn0fsupp.s ⊢ φ → ∃ s ∈ ℕ 0 ∀ x ∈ ℕ 0 s < x → ⦋ x / k⦌ C = 0 ˙
Assertion mptnn0fsupp ⊢ φ → finSupp 0 ˙⁡ k ∈ ℕ 0 ⟼ C

Proof

Step Hyp Ref Expression
1 mptnn0fsupp.0 ⊢ φ → 0 ˙ ∈ V
2 mptnn0fsupp.c ⊢ φ ∧ k ∈ ℕ 0 → C ∈ B
3 mptnn0fsupp.s ⊢ φ → ∃ s ∈ ℕ 0 ∀ x ∈ ℕ 0 s < x → ⦋ x / k⦌ C = 0 ˙
4 2 ralrimiva ⊢ φ → ∀ k ∈ ℕ 0 C ∈ B
5 eqid ⊢ k ∈ ℕ 0 ⟼ C = k ∈ ℕ 0 ⟼ C
6 5 fnmpt ⊢ ∀ k ∈ ℕ 0 C ∈ B → k ∈ ℕ 0 ⟼ C Fn ℕ 0
7 4 6 syl ⊢ φ → k ∈ ℕ 0 ⟼ C Fn ℕ 0
8 nn0ex ⊢ ℕ 0 ∈ V
9 8 a1i ⊢ φ → ℕ 0 ∈ V
10 1 elexd ⊢ φ → 0 ˙ ∈ V
11 suppvalfn ⊢ k ∈ ℕ 0 ⟼ C Fn ℕ 0 ∧ ℕ 0 ∈ V ∧ 0 ˙ ∈ V → k ∈ ℕ 0 ⟼ C supp 0 ˙ = x ∈ ℕ 0 | k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙
12 7 9 10 11 syl3anc ⊢ φ → k ∈ ℕ 0 ⟼ C supp 0 ˙ = x ∈ ℕ 0 | k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙
13 nne ⊢ ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ↔ k ∈ ℕ 0 ⟼ C ⁡ x = 0 ˙
14 simpr ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → x ∈ ℕ 0
15 4 ad2antrr ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → ∀ k ∈ ℕ 0 C ∈ B
16 rspcsbela ⊢ x ∈ ℕ 0 ∧ ∀ k ∈ ℕ 0 C ∈ B → ⦋ x / k⦌ C ∈ B
17 14 15 16 syl2anc ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → ⦋ x / k⦌ C ∈ B
18 5 fvmpts ⊢ x ∈ ℕ 0 ∧ ⦋ x / k⦌ C ∈ B → k ∈ ℕ 0 ⟼ C ⁡ x = ⦋ x / k⦌ C
19 14 17 18 syl2anc ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → k ∈ ℕ 0 ⟼ C ⁡ x = ⦋ x / k⦌ C
20 19 eqeq1d ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → k ∈ ℕ 0 ⟼ C ⁡ x = 0 ˙ ↔ ⦋ x / k⦌ C = 0 ˙
21 13 20 bitrid ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ↔ ⦋ x / k⦌ C = 0 ˙
22 21 imbi2d ⊢ φ ∧ s ∈ ℕ 0 ∧ x ∈ ℕ 0 → s < x → ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ↔ s < x → ⦋ x / k⦌ C = 0 ˙
23 22 ralbidva ⊢ φ ∧ s ∈ ℕ 0 → ∀ x ∈ ℕ 0 s < x → ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ↔ ∀ x ∈ ℕ 0 s < x → ⦋ x / k⦌ C = 0 ˙
24 23 rexbidva ⊢ φ → ∃ s ∈ ℕ 0 ∀ x ∈ ℕ 0 s < x → ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ↔ ∃ s ∈ ℕ 0 ∀ x ∈ ℕ 0 s < x → ⦋ x / k⦌ C = 0 ˙
25 3 24 mpbird ⊢ φ → ∃ s ∈ ℕ 0 ∀ x ∈ ℕ 0 s < x → ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙
26 rabssnn0fi ⊢ x ∈ ℕ 0 | k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ∈ Fin ↔ ∃ s ∈ ℕ 0 ∀ x ∈ ℕ 0 s < x → ¬ k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙
27 25 26 sylibr ⊢ φ → x ∈ ℕ 0 | k ∈ ℕ 0 ⟼ C ⁡ x ≠ 0 ˙ ∈ Fin
28 12 27 eqeltrd ⊢ φ → k ∈ ℕ 0 ⟼ C supp 0 ˙ ∈ Fin
29 funmpt ⊢ Fun ⁡ k ∈ ℕ 0 ⟼ C
30 8 mptex ⊢ k ∈ ℕ 0 ⟼ C ∈ V
31 funisfsupp ⊢ Fun ⁡ k ∈ ℕ 0 ⟼ C ∧ k ∈ ℕ 0 ⟼ C ∈ V ∧ 0 ˙ ∈ V → finSupp 0 ˙⁡ k ∈ ℕ 0 ⟼ C ↔ k ∈ ℕ 0 ⟼ C supp 0 ˙ ∈ Fin
32 29 30 10 31 mp3an12i ⊢ φ → finSupp 0 ˙⁡ k ∈ ℕ 0 ⟼ C ↔ k ∈ ℕ 0 ⟼ C supp 0 ˙ ∈ Fin
33 28 32 mpbird ⊢ φ → finSupp 0 ˙⁡ k ∈ ℕ 0 ⟼ C