MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  moexexlem Structured version   Visualization version   GIF version

Theorem moexexlem 2628
Description: Factor out the proof skeleton of moexex 2640 and moexexvw 2630. (Contributed by Wolf Lammen, 2-Oct-2023.)
Hypotheses
Ref Expression
moexexlem.1 𝑦𝜑
moexexlem.2 𝑦∃*𝑥𝜑
moexexlem.3 𝑥∃*𝑦𝑥(𝜑𝜓)
Assertion
Ref Expression
moexexlem ((∃*𝑥𝜑 ∧ ∀𝑥∃*𝑦𝜓) → ∃*𝑦𝑥(𝜑𝜓))

Proof of Theorem moexexlem
StepHypRef Expression
1 nfmo1 2557 . . . 4 𝑥∃*𝑥𝜑
2 nfa1 2150 . . . . 5 𝑥𝑥∃*𝑦𝜓
3 moexexlem.3 . . . . 5 𝑥∃*𝑦𝑥(𝜑𝜓)
42, 3nfim 1900 . . . 4 𝑥(∀𝑥∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓))
5 moexexlem.2 . . . . . 6 𝑦∃*𝑥𝜑
6 moexexlem.1 . . . . . 6 𝑦𝜑
7 mopick 2627 . . . . . . . 8 ((∃*𝑥𝜑 ∧ ∃𝑥(𝜑𝜓)) → (𝜑𝜓))
87ex 412 . . . . . . 7 (∃*𝑥𝜑 → (∃𝑥(𝜑𝜓) → (𝜑𝜓)))
98com23 86 . . . . . 6 (∃*𝑥𝜑 → (𝜑 → (∃𝑥(𝜑𝜓) → 𝜓)))
105, 6, 9alrimd 2211 . . . . 5 (∃*𝑥𝜑 → (𝜑 → ∀𝑦(∃𝑥(𝜑𝜓) → 𝜓)))
11 moim 2544 . . . . . 6 (∀𝑦(∃𝑥(𝜑𝜓) → 𝜓) → (∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓)))
1211spsd 2182 . . . . 5 (∀𝑦(∃𝑥(𝜑𝜓) → 𝜓) → (∀𝑥∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓)))
1310, 12syl6 35 . . . 4 (∃*𝑥𝜑 → (𝜑 → (∀𝑥∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓))))
141, 4, 13exlimd 2214 . . 3 (∃*𝑥𝜑 → (∃𝑥𝜑 → (∀𝑥∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓))))
156nfex 2322 . . . . . 6 𝑦𝑥𝜑
16 exsimpl 1872 . . . . . 6 (∃𝑥(𝜑𝜓) → ∃𝑥𝜑)
1715, 16exlimi 2213 . . . . 5 (∃𝑦𝑥(𝜑𝜓) → ∃𝑥𝜑)
18 nexmo 2541 . . . . 5 (¬ ∃𝑦𝑥(𝜑𝜓) → ∃*𝑦𝑥(𝜑𝜓))
1917, 18nsyl5 159 . . . 4 (¬ ∃𝑥𝜑 → ∃*𝑦𝑥(𝜑𝜓))
2019a1d 25 . . 3 (¬ ∃𝑥𝜑 → (∀𝑥∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓)))
2114, 20pm2.61d1 180 . 2 (∃*𝑥𝜑 → (∀𝑥∃*𝑦𝜓 → ∃*𝑦𝑥(𝜑𝜓)))
2221imp 406 1 ((∃*𝑥𝜑 ∧ ∀𝑥∃*𝑦𝜓) → ∃*𝑦𝑥(𝜑𝜓))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 395  wal 1537  wex 1783  wnf 1787  ∃*wmo 2538
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-10 2139  ax-11 2156  ax-12 2173
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-ex 1784  df-nf 1788  df-mo 2540
This theorem is referenced by:  moexexvw  2630  2moswapv  2631  moexex  2640
  Copyright terms: Public domain W3C validator