HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
GIF version

Theorem 2mo 1445
Description: Two equivalent expressions for double "at most one."
Assertion
Ref Expression
2mo (∃zwxy(φ → (x = zy = w)) ↔ ∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
Distinct variable groups:   x,y,z,w   φ,z,w

Proof of Theorem 2mo
StepHypRef Expression
1 equequ2 1133 . . . . . . 7 (v = z → (x = vx = z))
2 equequ2 1133 . . . . . . 7 (u = w → (y = uy = w))
31, 2bi2anan9 631 . . . . . 6 ((v = zu = w) → ((x = vy = u) ↔ (x = zy = w)))
43imbi2d 611 . . . . 5 ((v = zu = w) → ((φ → (x = vy = u)) ↔ (φ → (x = zy = w))))
542albidv 1278 . . . 4 ((v = zu = w) → (∀xy(φ → (x = vy = u)) ↔ ∀xy(φ → (x = zy = w))))
65cbvex2v 1317 . . 3 (∃vuxy(φ → (x = vy = u)) ↔ ∃zwxy(φ → (x = zy = w)))
7 ax-17 969 . . . . . . . . 9 ((φ → (x = vy = u)) → ∀z(φ → (x = vy = u)))
8 ax-17 969 . . . . . . . . 9 ((φ → (x = vy = u)) → ∀w(φ → (x = vy = u)))
9 hbs1 1330 . . . . . . . . . 10 ([z / x][w / y]φ → ∀x[z / x][w / y]φ)
10 ax-17 969 . . . . . . . . . 10 ((z = vw = u) → ∀x(z = vw = u))
119, 10hbim 1005 . . . . . . . . 9 (([z / x][w / y]φ → (z = vw = u)) → ∀x([z / x][w / y]φ → (z = vw = u)))
12 hbs1 1330 . . . . . . . . . . 11 ([w / y]φ → ∀y[w / y]φ)
1312hbsb 1331 . . . . . . . . . 10 ([z / x][w / y]φ → ∀y[z / x][w / y]φ)
14 ax-17 969 . . . . . . . . . 10 ((z = vw = u) → ∀y(z = vw = u))
1513, 14hbim 1005 . . . . . . . . 9 (([z / x][w / y]φ → (z = vw = u)) → ∀y([z / x][w / y]φ → (z = vw = u)))
16 sbequ12 1179 . . . . . . . . . . 11 (y = w → (φ ↔ [w / y]φ))
17 sbequ12 1179 . . . . . . . . . . 11 (x = z → ([w / y]φ ↔ [z / x][w / y]φ))
1816, 17sylan9bbr 540 . . . . . . . . . 10 ((x = zy = w) → (φ ↔ [z / x][w / y]φ))
19 equequ1 1132 . . . . . . . . . . 11 (x = z → (x = vz = v))
20 equequ1 1132 . . . . . . . . . . 11 (y = w → (y = uw = u))
2119, 20bi2anan9 631 . . . . . . . . . 10 ((x = zy = w) → ((x = vy = u) ↔ (z = vw = u)))
2218, 21imbi12d 625 . . . . . . . . 9 ((x = zy = w) → ((φ → (x = vy = u)) ↔ ([z / x][w / y]φ → (z = vw = u))))
237, 8, 11, 15, 22cbval2 1314 . . . . . . . 8 (∀xy(φ → (x = vy = u)) ↔ ∀zw([z / x][w / y]φ → (z = vw = u)))
2423biimp 151 . . . . . . 7 (∀xy(φ → (x = vy = u)) → ∀zw([z / x][w / y]φ → (z = vw = u)))
2524ancli 296 . . . . . 6 (∀xy(φ → (x = vy = u)) → (∀xy(φ → (x = vy = u)) ⋀ ∀zw([z / x][w / y]φ → (z = vw = u))))
26 alcom 1030 . . . . . . . . 9 (∀yzw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) ↔ ∀zyw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))))
278, 15aaan 1117 . . . . . . . . . 10 (∀yw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) ↔ (∀y(φ → (x = vy = u)) ⋀ ∀w([z / x][w / y]φ → (z = vw = u))))
2827albii 997 . . . . . . . . 9 (∀zyw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) ↔ ∀z(∀y(φ → (x = vy = u)) ⋀ ∀w([z / x][w / y]φ → (z = vw = u))))
2926, 28bitr 173 . . . . . . . 8 (∀yzw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) ↔ ∀z(∀y(φ → (x = vy = u)) ⋀ ∀w([z / x][w / y]φ → (z = vw = u))))
3029albii 997 . . . . . . 7 (∀xyzw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) ↔ ∀xz(∀y(φ → (x = vy = u)) ⋀ ∀w([z / x][w / y]φ → (z = vw = u))))
31 ax-17 969 . . . . . . . 8 (∀y(φ → (x = vy = u)) → ∀zy(φ → (x = vy = u)))
3211hbal 1003 . . . . . . . 8 (∀w([z / x][w / y]φ → (z = vw = u)) → ∀xw([z / x][w / y]φ → (z = vw = u)))
3331, 32aaan 1117 . . . . . . 7 (∀xz(∀y(φ → (x = vy = u)) ⋀ ∀w([z / x][w / y]φ → (z = vw = u))) ↔ (∀xy(φ → (x = vy = u)) ⋀ ∀zw([z / x][w / y]φ → (z = vw = u))))
3430, 33bitr 173 . . . . . 6 (∀xyzw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) ↔ (∀xy(φ → (x = vy = u)) ⋀ ∀zw([z / x][w / y]φ → (z = vw = u))))
3525, 34sylibr 200 . . . . 5 (∀xy(φ → (x = vy = u)) → ∀xyzw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))))
36 prth 555 . . . . . . . 8 (((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) → ((φ ⋀ [z / x][w / y]φ) → ((x = vy = u) ⋀ (z = vw = u))))
37 equtr2 1131 . . . . . . . . . 10 ((x = vz = v) → x = z)
38 equtr2 1131 . . . . . . . . . 10 ((y = uw = u) → y = w)
3937, 38anim12i 333 . . . . . . . . 9 (((x = vz = v) ⋀ (y = uw = u)) → (x = zy = w))
4039an4s 508 . . . . . . . 8 (((x = vy = u) ⋀ (z = vw = u)) → (x = zy = w))
4136, 40syl6 22 . . . . . . 7 (((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) → ((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
424119.20i2 991 . . . . . 6 (∀zw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) → ∀zw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
434219.20i2 991 . . . . 5 (∀xyzw((φ → (x = vy = u)) ⋀ ([z / x][w / y]φ → (z = vw = u))) → ∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
4435, 43syl 10 . . . 4 (∀xy(φ → (x = vy = u)) → ∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
454419.23aivv 1294 . . 3 (∃vuxy(φ → (x = vy = u)) → ∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
466, 45sylbir 201 . 2 (∃zwxy(φ → (x = zy = w)) → ∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
47 alrot4 1095 . . . . . . 7 (∀xyzw([z / x][w / y]φ → (φ → (x = zy = w))) ↔ ∀zwxy([z / x][w / y]φ → (φ → (x = zy = w))))
48 19.20 992 . . . . . . . . 9 (∀y([z / x][w / y]φ → (φ → (x = zy = w))) → (∀y[z / x][w / y]φ → ∀y(φ → (x = zy = w))))
494819.20ii 993 . . . . . . . 8 (∀xy([z / x][w / y]φ → (φ → (x = zy = w))) → (∀xy[z / x][w / y]φ → ∀xy(φ → (x = zy = w))))
504919.20i2 991 . . . . . . 7 (∀zwxy([z / x][w / y]φ → (φ → (x = zy = w))) → ∀zw(∀xy[z / x][w / y]φ → ∀xy(φ → (x = zy = w))))
5147, 50sylbi 199 . . . . . 6 (∀xyzw([z / x][w / y]φ → (φ → (x = zy = w))) → ∀zw(∀xy[z / x][w / y]φ → ∀xy(φ → (x = zy = w))))
52 19.22 1037 . . . . . . 7 (∀w(∀xy[z / x][w / y]φ → ∀xy(φ → (x = zy = w))) → (∃wxy[z / x][w / y]φ → ∃wxy(φ → (x = zy = w))))
535219.20i 990 . . . . . 6 (∀zw(∀xy[z / x][w / y]φ → ∀xy(φ → (x = zy = w))) → ∀z(∃wxy[z / x][w / y]φ → ∃wxy(φ → (x = zy = w))))
54 19.22 1037 . . . . . 6 (∀z(∃wxy[z / x][w / y]φ → ∃wxy(φ → (x = zy = w))) → (∃zwxy[z / x][w / y]φ → ∃zwxy(φ → (x = zy = w))))
5551, 53, 543syl 20 . . . . 5 (∀xyzw([z / x][w / y]φ → (φ → (x = zy = w))) → (∃zwxy[z / x][w / y]φ → ∃zwxy(φ → (x = zy = w))))
569, 1319.21ai 996 . . . . . 6 ([z / x][w / y]φ → ∀xy[z / x][w / y]φ)
575619.22i2 1039 . . . . 5 (∃zw[z / x][w / y]φ → ∃zwxy[z / x][w / y]φ)
5855, 57syl5com 52 . . . 4 (∃zw[z / x][w / y]φ → (∀xyzw([z / x][w / y]φ → (φ → (x = zy = w))) → ∃zwxy(φ → (x = zy = w))))
59 impexp 347 . . . . . . 7 (((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) ↔ (φ → ([z / x][w / y]φ → (x = zy = w))))
60 bi2.04 160 . . . . . . 7 ((φ → ([z / x][w / y]φ → (x = zy = w))) ↔ ([z / x][w / y]φ → (φ → (x = zy = w))))
6159, 60bitr 173 . . . . . 6 (((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) ↔ ([z / x][w / y]φ → (φ → (x = zy = w))))
62612albii 998 . . . . 5 (∀zw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) ↔ ∀zw([z / x][w / y]φ → (φ → (x = zy = w))))
63622albii 998 . . . 4 (∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) ↔ ∀xyzw([z / x][w / y]φ → (φ → (x = zy = w))))
6458, 63syl5ib 206 . . 3 (∃zw[z / x][w / y]φ → (∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) → ∃zwxy(φ → (x = zy = w))))
65 alnex 1031 . . . . . . 7 (∀w ¬ [z / x][w / y]φ ↔ ¬ ∃w[z / x][w / y]φ)
6665albii 997 . . . . . 6 (∀zw ¬ [z / x][w / y]φ ↔ ∀z ¬ ∃w[z / x][w / y]φ)
67 alnex 1031 . . . . . 6 (∀z ¬ ∃w[z / x][w / y]φ ↔ ¬ ∃zw[z / x][w / y]φ)
6866, 67bitr 173 . . . . 5 (∀zw ¬ [z / x][w / y]φ ↔ ¬ ∃zw[z / x][w / y]φ)
69 ax-17 969 . . . . . . . 8 φ → ∀z ¬ φ)
70 ax-17 969 . . . . . . . 8 φ → ∀w ¬ φ)
719hbn 1002 . . . . . . . 8 (¬ [z / x][w / y]φ → ∀x ¬ [z / x][w / y]φ)
7213hbn 1002 . . . . . . . 8 (¬ [z / x][w / y]φ → ∀y ¬ [z / x][w / y]φ)
7318negbid 610 . . . . . . . 8 ((x = zy = w) → (¬ φ ↔ ¬ [z / x][w / y]φ))
7469, 70, 71, 72, 73cbval2 1314 . . . . . . 7 (∀xy ¬ φ ↔ ∀zw ¬ [z / x][w / y]φ)
7574biimpr 152 . . . . . 6 (∀zw ¬ [z / x][w / y]φ → ∀xy ¬ φ)
76 pm2.21 76 . . . . . . 7 φ → (φ → (x = zy = w)))
777619.20i2 991 . . . . . 6 (∀xy ¬ φ → ∀xy(φ → (x = zy = w)))
78 19.8a 1027 . . . . . . 7 (∃wxy(φ → (x = zy = w)) → ∃zwxy(φ → (x = zy = w)))
797819.23bi 1063 . . . . . 6 (∀xy(φ → (x = zy = w)) → ∃zwxy(φ → (x = zy = w)))
8075, 77, 793syl 20 . . . . 5 (∀zw ¬ [z / x][w / y]φ → ∃zwxy(φ → (x = zy = w)))
8168, 80sylbir 201 . . . 4 (¬ ∃zw[z / x][w / y]φ → ∃zwxy(φ → (x = zy = w)))
8281a1d 12 . . 3 (¬ ∃zw[z / x][w / y]φ → (∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) → ∃zwxy(φ → (x = zy = w))))
8364, 82pm2.61i 126 . 2 (∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)) → ∃zwxy(φ → (x = zy = w)))
8446, 83impbi 157 1 (∃zwxy(φ → (x = zy = w)) ↔ ∀xyzw((φ ⋀ [z / x][w / y]φ) → (x = zy = w)))
Colors of variables: wff set class
Syntax hints:  ¬ wn 2   → wi 3   ↔ wb 146   ⋀ wa 223  ∀wal 952   = wceq 954  ∃wex 978  [wsbc 1168
This theorem is referenced by:  2mos 1446  2eu6 1452
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 960  ax-gen 961  ax-8 962  ax-10 964  ax-12 966  ax-17 969  ax-4 971  ax-5o 973  ax-6o 976  ax-9o 1121  ax-10o 1138  ax-16 1208  ax-11o 1216
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-ex 979  df-sb 1170
Copyright terms: Public domain