Users' Mathboxes Mathbox for Mario Carneiro < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  satffun Structured version   Visualization version   GIF version

Theorem satffun 35922
Description: The value of the satisfaction predicate as function over wff codes at a natural number is a function. (Contributed by AV, 28-Oct-2023.)
Assertion
Ref Expression
satffun ((𝑀𝑉𝐸𝑊𝑁 ∈ ω) → Fun ((𝑀 Sat 𝐸)‘𝑁))

Proof of Theorem satffun
Dummy variables 𝑛 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 satfv0fun 35884 . . . 4 ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘∅))
213adant3 1150 . . 3 ((𝑀𝑉𝐸𝑊𝑁 ∈ ω) → Fun ((𝑀 Sat 𝐸)‘∅))
3 fveq2 6888 . . . 4 (𝑁 = ∅ → ((𝑀 Sat 𝐸)‘𝑁) = ((𝑀 Sat 𝐸)‘∅))
43funeqd 6565 . . 3 (𝑁 = ∅ → (Fun ((𝑀 Sat 𝐸)‘𝑁) ↔ Fun ((𝑀 Sat 𝐸)‘∅)))
52, 4imbitrrid 249 . 2 (𝑁 = ∅ → ((𝑀𝑉𝐸𝑊𝑁 ∈ ω) → Fun ((𝑀 Sat 𝐸)‘𝑁)))
6 df-ne 2962 . . . . . 6 (𝑁 ≠ ∅ ↔ ¬ 𝑁 = ∅)
7 nnsuc 7889 . . . . . . . 8 ((𝑁 ∈ ω ∧ 𝑁 ≠ ∅) → ∃𝑛 ∈ ω 𝑁 = suc 𝑛)
8 suceq 6436 . . . . . . . . . . . . . . 15 (𝑥 = ∅ → suc 𝑥 = suc ∅)
98fveq2d 6892 . . . . . . . . . . . . . 14 (𝑥 = ∅ → ((𝑀 Sat 𝐸)‘suc 𝑥) = ((𝑀 Sat 𝐸)‘suc ∅))
109funeqd 6565 . . . . . . . . . . . . 13 (𝑥 = ∅ → (Fun ((𝑀 Sat 𝐸)‘suc 𝑥) ↔ Fun ((𝑀 Sat 𝐸)‘suc ∅)))
1110imbi2d 343 . . . . . . . . . . . 12 (𝑥 = ∅ → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑥)) ↔ ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc ∅))))
12 suceq 6436 . . . . . . . . . . . . . . 15 (𝑥 = 𝑦 → suc 𝑥 = suc 𝑦)
1312fveq2d 6892 . . . . . . . . . . . . . 14 (𝑥 = 𝑦 → ((𝑀 Sat 𝐸)‘suc 𝑥) = ((𝑀 Sat 𝐸)‘suc 𝑦))
1413funeqd 6565 . . . . . . . . . . . . 13 (𝑥 = 𝑦 → (Fun ((𝑀 Sat 𝐸)‘suc 𝑥) ↔ Fun ((𝑀 Sat 𝐸)‘suc 𝑦)))
1514imbi2d 343 . . . . . . . . . . . 12 (𝑥 = 𝑦 → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑥)) ↔ ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑦))))
16 suceq 6436 . . . . . . . . . . . . . . 15 (𝑥 = suc 𝑦 → suc 𝑥 = suc suc 𝑦)
1716fveq2d 6892 . . . . . . . . . . . . . 14 (𝑥 = suc 𝑦 → ((𝑀 Sat 𝐸)‘suc 𝑥) = ((𝑀 Sat 𝐸)‘suc suc 𝑦))
1817funeqd 6565 . . . . . . . . . . . . 13 (𝑥 = suc 𝑦 → (Fun ((𝑀 Sat 𝐸)‘suc 𝑥) ↔ Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦)))
1918imbi2d 343 . . . . . . . . . . . 12 (𝑥 = suc 𝑦 → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑥)) ↔ ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦))))
20 suceq 6436 . . . . . . . . . . . . . . 15 (𝑥 = 𝑛 → suc 𝑥 = suc 𝑛)
2120fveq2d 6892 . . . . . . . . . . . . . 14 (𝑥 = 𝑛 → ((𝑀 Sat 𝐸)‘suc 𝑥) = ((𝑀 Sat 𝐸)‘suc 𝑛))
2221funeqd 6565 . . . . . . . . . . . . 13 (𝑥 = 𝑛 → (Fun ((𝑀 Sat 𝐸)‘suc 𝑥) ↔ Fun ((𝑀 Sat 𝐸)‘suc 𝑛)))
2322imbi2d 343 . . . . . . . . . . . 12 (𝑥 = 𝑛 → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑥)) ↔ ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑛))))
24 satffunlem1 35920 . . . . . . . . . . . 12 ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc ∅))
25 pm2.27 43 . . . . . . . . . . . . . 14 ((𝑀𝑉𝐸𝑊) → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑦)) → Fun ((𝑀 Sat 𝐸)‘suc 𝑦)))
26 satffunlem2 35921 . . . . . . . . . . . . . . . 16 ((𝑦 ∈ ω ∧ (𝑀𝑉𝐸𝑊)) → (Fun ((𝑀 Sat 𝐸)‘suc 𝑦) → Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦)))
2726expcom 419 . . . . . . . . . . . . . . 15 ((𝑀𝑉𝐸𝑊) → (𝑦 ∈ ω → (Fun ((𝑀 Sat 𝐸)‘suc 𝑦) → Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦))))
2827com23 87 . . . . . . . . . . . . . 14 ((𝑀𝑉𝐸𝑊) → (Fun ((𝑀 Sat 𝐸)‘suc 𝑦) → (𝑦 ∈ ω → Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦))))
2925, 28syld 48 . . . . . . . . . . . . 13 ((𝑀𝑉𝐸𝑊) → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑦)) → (𝑦 ∈ ω → Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦))))
3029com13 89 . . . . . . . . . . . 12 (𝑦 ∈ ω → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑦)) → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc suc 𝑦))))
3111, 15, 19, 23, 24, 30finds 7902 . . . . . . . . . . 11 (𝑛 ∈ ω → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑛)))
3231adantr 486 . . . . . . . . . 10 ((𝑛 ∈ ω ∧ 𝑁 = suc 𝑛) → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑛)))
33 fveq2 6888 . . . . . . . . . . . . 13 (𝑁 = suc 𝑛 → ((𝑀 Sat 𝐸)‘𝑁) = ((𝑀 Sat 𝐸)‘suc 𝑛))
3433funeqd 6565 . . . . . . . . . . . 12 (𝑁 = suc 𝑛 → (Fun ((𝑀 Sat 𝐸)‘𝑁) ↔ Fun ((𝑀 Sat 𝐸)‘suc 𝑛)))
3534imbi2d 343 . . . . . . . . . . 11 (𝑁 = suc 𝑛 → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁)) ↔ ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑛))))
3635adantl 487 . . . . . . . . . 10 ((𝑛 ∈ ω ∧ 𝑁 = suc 𝑛) → (((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁)) ↔ ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘suc 𝑛))))
3732, 36mpbird 260 . . . . . . . . 9 ((𝑛 ∈ ω ∧ 𝑁 = suc 𝑛) → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁)))
3837rexlimiva 3161 . . . . . . . 8 (∃𝑛 ∈ ω 𝑁 = suc 𝑛 → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁)))
397, 38syl 18 . . . . . . 7 ((𝑁 ∈ ω ∧ 𝑁 ≠ ∅) → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁)))
4039expcom 419 . . . . . 6 (𝑁 ≠ ∅ → (𝑁 ∈ ω → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁))))
416, 40sylbir 238 . . . . 5 𝑁 = ∅ → (𝑁 ∈ ω → ((𝑀𝑉𝐸𝑊) → Fun ((𝑀 Sat 𝐸)‘𝑁))))
4241com13 89 . . . 4 ((𝑀𝑉𝐸𝑊) → (𝑁 ∈ ω → (¬ 𝑁 = ∅ → Fun ((𝑀 Sat 𝐸)‘𝑁))))
43423impia 1135 . . 3 ((𝑀𝑉𝐸𝑊𝑁 ∈ ω) → (¬ 𝑁 = ∅ → Fun ((𝑀 Sat 𝐸)‘𝑁)))
4443com12 33 . 2 𝑁 = ∅ → ((𝑀𝑉𝐸𝑊𝑁 ∈ ω) → Fun ((𝑀 Sat 𝐸)‘𝑁)))
455, 44pm2.61i 184 1 ((𝑀𝑉𝐸𝑊𝑁 ∈ ω) → Fun ((𝑀 Sat 𝐸)‘𝑁))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2146  wne 2961  wrex 3092  c0 4289  suc csuc 6369  Fun wfun 6537  cfv 6543  (class class class)co 7423  ωcom 7871   Sat csat 35849
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-inf2 9620
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-int 4918  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-2o 8463  df-map 8835  df-goel 35853  df-gona 35854  df-goal 35855  df-sat 35856  df-fmla 35858
This theorem is used by:  satff  35923  satfv1fvfmla1  35936
  Copyright terms: Public domain W3C validator