ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  euan GIF version

Theorem euan 1997
Description: Introduction of a conjunct into uniqueness quantifier. (Contributed by NM, 19-Feb-2005.) (Proof shortened by Andrew Salmon, 9-Jul-2011.)
Hypothesis
Ref Expression
euan.1 (𝜑 → ∀𝑥𝜑)
Assertion
Ref Expression
euan (∃!𝑥(𝜑𝜓) ↔ (𝜑 ∧ ∃!𝑥𝜓))

Proof of Theorem euan
StepHypRef Expression
1 euan.1 . . . . . 6 (𝜑 → ∀𝑥𝜑)
2 simpl 107 . . . . . 6 ((𝜑𝜓) → 𝜑)
31, 2exlimih 1524 . . . . 5 (∃𝑥(𝜑𝜓) → 𝜑)
43adantr 270 . . . 4 ((∃𝑥(𝜑𝜓) ∧ ∃*𝑥(𝜑𝜓)) → 𝜑)
5 simpr 108 . . . . . 6 ((𝜑𝜓) → 𝜓)
65eximi 1531 . . . . 5 (∃𝑥(𝜑𝜓) → ∃𝑥𝜓)
76adantr 270 . . . 4 ((∃𝑥(𝜑𝜓) ∧ ∃*𝑥(𝜑𝜓)) → ∃𝑥𝜓)
8 hbe1 1424 . . . . . 6 (∃𝑥(𝜑𝜓) → ∀𝑥𝑥(𝜑𝜓))
93a1d 22 . . . . . . . 8 (∃𝑥(𝜑𝜓) → (𝜓𝜑))
109ancrd 319 . . . . . . 7 (∃𝑥(𝜑𝜓) → (𝜓 → (𝜑𝜓)))
115, 10impbid2 141 . . . . . 6 (∃𝑥(𝜑𝜓) → ((𝜑𝜓) ↔ 𝜓))
128, 11mobidh 1975 . . . . 5 (∃𝑥(𝜑𝜓) → (∃*𝑥(𝜑𝜓) ↔ ∃*𝑥𝜓))
1312biimpa 290 . . . 4 ((∃𝑥(𝜑𝜓) ∧ ∃*𝑥(𝜑𝜓)) → ∃*𝑥𝜓)
144, 7, 13jca32 303 . . 3 ((∃𝑥(𝜑𝜓) ∧ ∃*𝑥(𝜑𝜓)) → (𝜑 ∧ (∃𝑥𝜓 ∧ ∃*𝑥𝜓)))
15 eu5 1988 . . 3 (∃!𝑥(𝜑𝜓) ↔ (∃𝑥(𝜑𝜓) ∧ ∃*𝑥(𝜑𝜓)))
16 eu5 1988 . . . 4 (∃!𝑥𝜓 ↔ (∃𝑥𝜓 ∧ ∃*𝑥𝜓))
1716anbi2i 444 . . 3 ((𝜑 ∧ ∃!𝑥𝜓) ↔ (𝜑 ∧ (∃𝑥𝜓 ∧ ∃*𝑥𝜓)))
1814, 15, 173imtr4i 199 . 2 (∃!𝑥(𝜑𝜓) → (𝜑 ∧ ∃!𝑥𝜓))
19 ibar 295 . . . 4 (𝜑 → (𝜓 ↔ (𝜑𝜓)))
201, 19eubidh 1947 . . 3 (𝜑 → (∃!𝑥𝜓 ↔ ∃!𝑥(𝜑𝜓)))
2120biimpa 290 . 2 ((𝜑 ∧ ∃!𝑥𝜓) → ∃!𝑥(𝜑𝜓))
2218, 21impbii 124 1 (∃!𝑥(𝜑𝜓) ↔ (𝜑 ∧ ∃!𝑥𝜓))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 102  wb 103  wal 1282  wex 1421  ∃!weu 1941  ∃*wmo 1942
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-io 662  ax-5 1376  ax-7 1377  ax-gen 1378  ax-ie1 1422  ax-ie2 1423  ax-8 1435  ax-10 1436  ax-11 1437  ax-i12 1438  ax-bndl 1439  ax-4 1440  ax-17 1459  ax-i9 1463  ax-ial 1467  ax-i5r 1468
This theorem depends on definitions:  df-bi 115  df-nf 1390  df-sb 1686  df-eu 1944  df-mo 1945
This theorem is referenced by:  euanv  1998  2eu7  2035
  Copyright terms: Public domain W3C validator