Users' Mathboxes Mathbox for Thomas van Maaren < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  impprop Structured version   Visualization version   GIF version

Theorem impprop 38558
Description: The implication between two sentences of propositional calculus is a sentence of propositional calculus. (Contributed by Thomas van Maaren, 21-Aug-2026.)
Assertion
Ref Expression
impprop ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → (𝑥prop→𝑦) ∈ PROP)

Proof of Theorem impprop
Dummy variables 𝑤 𝑢 𝑣 𝑧 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-prop 38554 . . 3 PROP = setrecs((𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))}))
2 prex 5396 . . . 4 {𝑥, 𝑦} ∈ V
32a1i 11 . . 3 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → {𝑥, 𝑦} ∈ V)
4 prssi 4782 . . 3 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → {𝑥, 𝑦} ⊆ PROP)
51, 3, 4setrec1 9929 . 2 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → ((𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})‘{𝑥, 𝑦}) ⊆ PROP)
6 vex 3454 . . . . . . . . . . . 12 𝑦 ∈ V
7 vex 3454 . . . . . . . . . . . 12 𝑥 ∈ V
8 oveq2 7417 . . . . . . . . . . . . 13 (𝑣 = 𝑦 → (𝑢prop→𝑣) = (𝑢prop→𝑦))
98eqeq2d 2771 . . . . . . . . . . . 12 (𝑣 = 𝑦 → (𝑧 = (𝑢prop→𝑣) ↔ 𝑧 = (𝑢prop→𝑦)))
10 oveq1 7416 . . . . . . . . . . . . 13 (𝑢 = 𝑥 → (𝑢prop→𝑦) = (𝑥prop→𝑦))
1110eqeq2d 2771 . . . . . . . . . . . 12 (𝑢 = 𝑥 → (𝑧 = (𝑢prop→𝑦) ↔ 𝑧 = (𝑥prop→𝑦)))
126, 7, 9, 11ceqsex2v 3501 . . . . . . . . . . 11 (∃𝑣𝑢(𝑣 = 𝑦𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) ↔ 𝑧 = (𝑥prop→𝑦))
1312bilanri 512 . . . . . . . . . 10 (((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) ∧ 𝑧 = (𝑥prop→𝑦)) → ∃𝑣𝑢(𝑣 = 𝑦𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)))
14 3anass 1111 . . . . . . . . . . . . 13 ((𝑣 = 𝑦𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) ↔ (𝑣 = 𝑦 ∧ (𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))))
1514exbii 1881 . . . . . . . . . . . 12 (∃𝑢(𝑣 = 𝑦𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) ↔ ∃𝑢(𝑣 = 𝑦 ∧ (𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))))
16 19.42v 1986 . . . . . . . . . . . 12 (∃𝑢(𝑣 = 𝑦 ∧ (𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))) ↔ (𝑣 = 𝑦 ∧ ∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))))
1715, 16bitri 278 . . . . . . . . . . 11 (∃𝑢(𝑣 = 𝑦𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) ↔ (𝑣 = 𝑦 ∧ ∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))))
1817exbii 1881 . . . . . . . . . 10 (∃𝑣𝑢(𝑣 = 𝑦𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) ↔ ∃𝑣(𝑣 = 𝑦 ∧ ∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))))
1913, 18sylib 221 . . . . . . . . 9 (((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) ∧ 𝑧 = (𝑥prop→𝑦)) → ∃𝑣(𝑣 = 𝑦 ∧ ∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))))
20 olc 882 . . . . . . . . . . . 12 (𝑣 = 𝑦 → (𝑣 = 𝑥𝑣 = 𝑦))
21 vex 3454 . . . . . . . . . . . . 13 𝑣 ∈ V
2221elpr 4609 . . . . . . . . . . . 12 (𝑣 ∈ {𝑥, 𝑦} ↔ (𝑣 = 𝑥𝑣 = 𝑦))
2320, 22sylibr 237 . . . . . . . . . . 11 (𝑣 = 𝑦𝑣 ∈ {𝑥, 𝑦})
24 orc 881 . . . . . . . . . . . . . . . 16 (𝑢 = 𝑥 → (𝑢 = 𝑥𝑢 = 𝑦))
25 vex 3454 . . . . . . . . . . . . . . . . 17 𝑢 ∈ V
2625elpr 4609 . . . . . . . . . . . . . . . 16 (𝑢 ∈ {𝑥, 𝑦} ↔ (𝑢 = 𝑥𝑢 = 𝑦))
2724, 26sylibr 237 . . . . . . . . . . . . . . 15 (𝑢 = 𝑥𝑢 ∈ {𝑥, 𝑦})
2827anim1i 627 . . . . . . . . . . . . . 14 ((𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) → (𝑢 ∈ {𝑥, 𝑦} ∧ 𝑧 = (𝑢prop→𝑣)))
2928eximi 1868 . . . . . . . . . . . . 13 (∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) → ∃𝑢(𝑢 ∈ {𝑥, 𝑦} ∧ 𝑧 = (𝑢prop→𝑣)))
30 df-rex 3087 . . . . . . . . . . . . 13 (∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣) ↔ ∃𝑢(𝑢 ∈ {𝑥, 𝑦} ∧ 𝑧 = (𝑢prop→𝑣)))
3129, 30sylibr 237 . . . . . . . . . . . 12 (∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) → ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))
3231olcd 888 . . . . . . . . . . 11 (∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣)) → (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)))
3323, 32anim12i 625 . . . . . . . . . 10 ((𝑣 = 𝑦 ∧ ∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))) → (𝑣 ∈ {𝑥, 𝑦} ∧ (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))))
3433eximi 1868 . . . . . . . . 9 (∃𝑣(𝑣 = 𝑦 ∧ ∃𝑢(𝑢 = 𝑥𝑧 = (𝑢prop→𝑣))) → ∃𝑣(𝑣 ∈ {𝑥, 𝑦} ∧ (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))))
3519, 34syl 18 . . . . . . . 8 (((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) ∧ 𝑧 = (𝑥prop→𝑦)) → ∃𝑣(𝑣 ∈ {𝑥, 𝑦} ∧ (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))))
36 df-rex 3087 . . . . . . . 8 (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ↔ ∃𝑣(𝑣 ∈ {𝑥, 𝑦} ∧ (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))))
3735, 36sylibr 237 . . . . . . 7 (((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) ∧ 𝑧 = (𝑥prop→𝑦)) → ∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)))
3837orcd 887 . . . . . 6 (((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) ∧ 𝑧 = (𝑥prop→𝑦)) → (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛)))
3938ex 418 . . . . 5 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → (𝑧 = (𝑥prop→𝑦) → (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))))
4039alrimiv 1960 . . . 4 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → ∀𝑧(𝑧 = (𝑥prop→𝑦) → (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))))
41 ovex 7442 . . . . 5 (𝑥prop→𝑦) ∈ V
42 elab6g 3623 . . . . 5 ((𝑥prop→𝑦) ∈ V → ((𝑥prop→𝑦) ∈ {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))} ↔ ∀𝑧(𝑧 = (𝑥prop→𝑦) → (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛)))))
4341, 42ax-mp 5 . . . 4 ((𝑥prop→𝑦) ∈ {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))} ↔ ∀𝑧(𝑧 = (𝑥prop→𝑦) → (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))))
4440, 43sylibr 237 . . 3 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → (𝑥prop→𝑦) ∈ {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})
45 rexeq 3315 . . . . . . . . 9 (𝑤 = {𝑥, 𝑦} → (∃𝑢𝑤 𝑧 = (𝑢prop→𝑣) ↔ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)))
4645orbi2d 929 . . . . . . . 8 (𝑤 = {𝑥, 𝑦} → ((𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ↔ (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))))
4746rexeqbi1dv 3330 . . . . . . 7 (𝑤 = {𝑥, 𝑦} → (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ↔ ∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣))))
4847orbi1d 930 . . . . . 6 (𝑤 = {𝑥, 𝑦} → ((∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛)) ↔ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))))
4948abbidv 2826 . . . . 5 (𝑤 = {𝑥, 𝑦} → {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))} = {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})
50 eqid 2760 . . . . 5 (𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))}) = (𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})
512dfproplem 38555 . . . . 5 {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))} ∈ V
5249, 50, 51fvmpt 6982 . . . 4 ({𝑥, 𝑦} ∈ V → ((𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})‘{𝑥, 𝑦}) = {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})
532, 52ax-mp 5 . . 3 ((𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})‘{𝑥, 𝑦}) = {𝑧 ∣ (∃𝑣 ∈ {𝑥, 𝑦} (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢 ∈ {𝑥, 𝑦}𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))}
5444, 53eleqtrrdi 2871 . 2 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → (𝑥prop→𝑦) ∈ ((𝑤 ∈ V ↦ {𝑧 ∣ (∃𝑣𝑤 (𝑧 = (prop¬‘𝑣) ∨ ∃𝑢𝑤 𝑧 = (𝑢prop→𝑣)) ∨ ∃𝑛 ∈ ℕ 𝑧 = (propvar ‘𝑛))})‘{𝑥, 𝑦}))
555, 54sseldd 3932 1 ((𝑥 ∈ PROP ∧ 𝑦 ∈ PROP) → (𝑥prop→𝑦) ∈ PROP)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  wo 861  w3a 1103  wal 1568   = wceq 1570  wex 1812  wcel 2145  {cab 2738  wrex 3086  Vcvv 3450  {cpr 4586  cmpt 5186  cfv 6528  (class class class)co 7409  cn 12290  propvar cpropvar 38547  prop¬cpropneg 38548  prop→cpropimp 38549  PROPcprop 38553
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7735  ax-reg 9564  ax-inf2 9620  ax-cnex 11213  ax-1cn 11215  ax-addcl 11217
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-iin 4954  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5543  df-eprel 5548  df-po 5556  df-so 5557  df-fr 5601  df-we 5603  df-xp 5654  df-rel 5655  df-cnv 5656  df-co 5657  df-dm 5658  df-rn 5659  df-res 5660  df-ima 5661  df-pred 6294  df-ord 6355  df-on 6356  df-lim 6357  df-suc 6358  df-iota 6484  df-fun 6530  df-fn 6531  df-f 6532  df-f1 6533  df-fo 6534  df-f1o 6535  df-fv 6536  df-ov 7412  df-om 7862  df-2nd 7986  df-frecs 8278  df-wrecs 8309  df-recs 8358  df-rdg 8397  df-r1 9746  df-rank 9747  df-scott 9886  df-setrecs 9922  df-nn 12291  df-prop 38554
This theorem is used by:  dfprop1  38559
  Copyright terms: Public domain W3C validator