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

Theorem addcan 6948
Description: Cancellation law for addition. Theorem I.1 of [Apostol] p. 18. (Contributed by NM, 22-Nov-1994.) (Proof shortened by Mario Carneiro, 27-May-2016.)
Assertion
Ref Expression
addcan ((A B 𝐶 ℂ) → ((A + B) = (A + 𝐶) ↔ B = 𝐶))

Proof of Theorem addcan
Dummy variable x is distinct from all other variables.
StepHypRef Expression
1 cnegex2 6947 . . 3 (A ℂ → x ℂ (x + A) = 0)
213ad2ant1 924 . 2 ((A B 𝐶 ℂ) → x ℂ (x + A) = 0)
3 oveq2 5463 . . . 4 ((A + B) = (A + 𝐶) → (x + (A + B)) = (x + (A + 𝐶)))
4 simprr 484 . . . . . . 7 (((A B 𝐶 ℂ) (x (x + A) = 0)) → (x + A) = 0)
54oveq1d 5470 . . . . . 6 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((x + A) + B) = (0 + B))
6 simprl 483 . . . . . . 7 (((A B 𝐶 ℂ) (x (x + A) = 0)) → x ℂ)
7 simpl1 906 . . . . . . 7 (((A B 𝐶 ℂ) (x (x + A) = 0)) → A ℂ)
8 simpl2 907 . . . . . . 7 (((A B 𝐶 ℂ) (x (x + A) = 0)) → B ℂ)
96, 7, 8addassd 6807 . . . . . 6 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((x + A) + B) = (x + (A + B)))
10 addid2 6909 . . . . . . 7 (B ℂ → (0 + B) = B)
118, 10syl 14 . . . . . 6 (((A B 𝐶 ℂ) (x (x + A) = 0)) → (0 + B) = B)
125, 9, 113eqtr3d 2077 . . . . 5 (((A B 𝐶 ℂ) (x (x + A) = 0)) → (x + (A + B)) = B)
134oveq1d 5470 . . . . . 6 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((x + A) + 𝐶) = (0 + 𝐶))
14 simpl3 908 . . . . . . 7 (((A B 𝐶 ℂ) (x (x + A) = 0)) → 𝐶 ℂ)
156, 7, 14addassd 6807 . . . . . 6 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((x + A) + 𝐶) = (x + (A + 𝐶)))
16 addid2 6909 . . . . . . 7 (𝐶 ℂ → (0 + 𝐶) = 𝐶)
1714, 16syl 14 . . . . . 6 (((A B 𝐶 ℂ) (x (x + A) = 0)) → (0 + 𝐶) = 𝐶)
1813, 15, 173eqtr3d 2077 . . . . 5 (((A B 𝐶 ℂ) (x (x + A) = 0)) → (x + (A + 𝐶)) = 𝐶)
1912, 18eqeq12d 2051 . . . 4 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((x + (A + B)) = (x + (A + 𝐶)) ↔ B = 𝐶))
203, 19syl5ib 143 . . 3 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((A + B) = (A + 𝐶) → B = 𝐶))
21 oveq2 5463 . . 3 (B = 𝐶 → (A + B) = (A + 𝐶))
2220, 21impbid1 130 . 2 (((A B 𝐶 ℂ) (x (x + A) = 0)) → ((A + B) = (A + 𝐶) ↔ B = 𝐶))
232, 22rexlimddv 2431 1 ((A B 𝐶 ℂ) → ((A + B) = (A + 𝐶) ↔ B = 𝐶))
Colors of variables: wff set class
Syntax hints:  wi 4   wa 97  wb 98   w3a 884   = wceq 1242   wcel 1390  wrex 2301  (class class class)co 5455  cc 6669  0cc0 6671   + caddc 6674
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 99  ax-ia2 100  ax-ia3 101  ax-io 629  ax-5 1333  ax-7 1334  ax-gen 1335  ax-ie1 1379  ax-ie2 1380  ax-8 1392  ax-10 1393  ax-11 1394  ax-i12 1395  ax-bnd 1396  ax-4 1397  ax-17 1416  ax-i9 1420  ax-ial 1424  ax-i5r 1425  ax-ext 2019  ax-resscn 6735  ax-1cn 6736  ax-icn 6738  ax-addcl 6739  ax-addrcl 6740  ax-mulcl 6741  ax-addcom 6743  ax-addass 6745  ax-distr 6747  ax-i2m1 6748  ax-0id 6751  ax-rnegex 6752  ax-cnre 6754
This theorem depends on definitions:  df-bi 110  df-3an 886  df-tru 1245  df-nf 1347  df-sb 1643  df-clab 2024  df-cleq 2030  df-clel 2033  df-nfc 2164  df-ral 2305  df-rex 2306  df-v 2553  df-un 2916  df-in 2918  df-ss 2925  df-sn 3373  df-pr 3374  df-op 3376  df-uni 3572  df-br 3756  df-iota 4810  df-fv 4853  df-ov 5458
This theorem is referenced by:  addcani  6950  addcand  6952  subcan  7022
  Copyright terms: Public domain W3C validator