Users' Mathboxes Mathbox for Saveliy Skresanov < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  sigarcol Structured version   Visualization version   GIF version

Theorem sigarcol 41476
Description: Given three points 𝐴, 𝐵 and 𝐶 such that ¬ 𝐴 = 𝐵, the point 𝐶 lies on the line going through 𝐴 and 𝐵 iff the corresponding signed area is zero. That justifies the usage of signed area as a collinearity indicator. (Contributed by Saveliy Skresanov, 22-Sep-2017.)
Hypotheses
Ref Expression
sigarcol.sigar 𝐺 = (𝑥 ∈ ℂ, 𝑦 ∈ ℂ ↦ (ℑ‘((∗‘𝑥) · 𝑦)))
sigarcol.a (𝜑 → (𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ))
sigarcol.b (𝜑 → ¬ 𝐴 = 𝐵)
Assertion
Ref Expression
sigarcol (𝜑 → (((𝐴𝐶)𝐺(𝐵𝐶)) = 0 ↔ ∃𝑡 ∈ ℝ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))))
Distinct variable groups:   𝑥,𝑡,𝑦,𝐴   𝑡,𝐵,𝑥,𝑦   𝑡,𝐶,𝑥,𝑦   𝑡,𝐺   𝜑,𝑡
Allowed substitution hints:   𝜑(𝑥,𝑦)   𝐺(𝑥,𝑦)

Proof of Theorem sigarcol
StepHypRef Expression
1 sigarcol.sigar . . . . 5 𝐺 = (𝑥 ∈ ℂ, 𝑦 ∈ ℂ ↦ (ℑ‘((∗‘𝑥) · 𝑦)))
2 sigarcol.a . . . . . . . 8 (𝜑 → (𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ))
32simp2d 1135 . . . . . . 7 (𝜑𝐵 ∈ ℂ)
42simp3d 1136 . . . . . . 7 (𝜑𝐶 ∈ ℂ)
52simp1d 1134 . . . . . . 7 (𝜑𝐴 ∈ ℂ)
63, 4, 53jca 1379 . . . . . 6 (𝜑 → (𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ ∧ 𝐴 ∈ ℂ))
76adantr 472 . . . . 5 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ ∧ 𝐴 ∈ ℂ))
8 sigarcol.b . . . . . 6 (𝜑 → ¬ 𝐴 = 𝐵)
98adantr 472 . . . . 5 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → ¬ 𝐴 = 𝐵)
101sigarperm 41472 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → ((𝐴𝐶)𝐺(𝐵𝐶)) = ((𝐵𝐴)𝐺(𝐶𝐴)))
112, 10syl 17 . . . . . . . 8 (𝜑 → ((𝐴𝐶)𝐺(𝐵𝐶)) = ((𝐵𝐴)𝐺(𝐶𝐴)))
121sigarperm 41472 . . . . . . . . 9 ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ ∧ 𝐴 ∈ ℂ) → ((𝐵𝐴)𝐺(𝐶𝐴)) = ((𝐶𝐵)𝐺(𝐴𝐵)))
136, 12syl 17 . . . . . . . 8 (𝜑 → ((𝐵𝐴)𝐺(𝐶𝐴)) = ((𝐶𝐵)𝐺(𝐴𝐵)))
1411, 13eqtrd 2758 . . . . . . 7 (𝜑 → ((𝐴𝐶)𝐺(𝐵𝐶)) = ((𝐶𝐵)𝐺(𝐴𝐵)))
1514eqeq1d 2726 . . . . . 6 (𝜑 → (((𝐴𝐶)𝐺(𝐵𝐶)) = 0 ↔ ((𝐶𝐵)𝐺(𝐴𝐵)) = 0))
1615biimpa 502 . . . . 5 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → ((𝐶𝐵)𝐺(𝐴𝐵)) = 0)
171, 7, 9, 16sigardiv 41473 . . . 4 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → ((𝐶𝐵) / (𝐴𝐵)) ∈ ℝ)
184, 3subcld 10505 . . . . . . . 8 (𝜑 → (𝐶𝐵) ∈ ℂ)
1918adantr 472 . . . . . . 7 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (𝐶𝐵) ∈ ℂ)
205, 3subcld 10505 . . . . . . . 8 (𝜑 → (𝐴𝐵) ∈ ℂ)
2120adantr 472 . . . . . . 7 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (𝐴𝐵) ∈ ℂ)
225adantr 472 . . . . . . . 8 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → 𝐴 ∈ ℂ)
233adantr 472 . . . . . . . 8 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → 𝐵 ∈ ℂ)
249neqned 2903 . . . . . . . 8 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → 𝐴𝐵)
2522, 23, 24subne0d 10514 . . . . . . 7 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (𝐴𝐵) ≠ 0)
2619, 21, 25divcan1d 10915 . . . . . 6 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵)) = (𝐶𝐵))
2726oveq2d 6781 . . . . 5 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (𝐵 + (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵))) = (𝐵 + (𝐶𝐵)))
284adantr 472 . . . . . 6 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → 𝐶 ∈ ℂ)
2923, 28pncan3d 10508 . . . . 5 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → (𝐵 + (𝐶𝐵)) = 𝐶)
3027, 29eqtr2d 2759 . . . 4 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → 𝐶 = (𝐵 + (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵))))
31 oveq1 6772 . . . . . . 7 (𝑡 = ((𝐶𝐵) / (𝐴𝐵)) → (𝑡 · (𝐴𝐵)) = (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵)))
3231oveq2d 6781 . . . . . 6 (𝑡 = ((𝐶𝐵) / (𝐴𝐵)) → (𝐵 + (𝑡 · (𝐴𝐵))) = (𝐵 + (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵))))
3332eqeq2d 2734 . . . . 5 (𝑡 = ((𝐶𝐵) / (𝐴𝐵)) → (𝐶 = (𝐵 + (𝑡 · (𝐴𝐵))) ↔ 𝐶 = (𝐵 + (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵)))))
3433rspcev 3413 . . . 4 ((((𝐶𝐵) / (𝐴𝐵)) ∈ ℝ ∧ 𝐶 = (𝐵 + (((𝐶𝐵) / (𝐴𝐵)) · (𝐴𝐵)))) → ∃𝑡 ∈ ℝ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵))))
3517, 30, 34syl2anc 696 . . 3 ((𝜑 ∧ ((𝐴𝐶)𝐺(𝐵𝐶)) = 0) → ∃𝑡 ∈ ℝ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵))))
3635ex 449 . 2 (𝜑 → (((𝐴𝐶)𝐺(𝐵𝐶)) = 0 → ∃𝑡 ∈ ℝ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))))
37143ad2ant1 1125 . . . 4 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐴𝐶)𝐺(𝐵𝐶)) = ((𝐶𝐵)𝐺(𝐴𝐵)))
38 simp3 1130 . . . . . . . 8 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵))))
3938oveq1d 6780 . . . . . . 7 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (𝐶𝐵) = ((𝐵 + (𝑡 · (𝐴𝐵))) − 𝐵))
4033ad2ant1 1125 . . . . . . . 8 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → 𝐵 ∈ ℂ)
41 simp2 1129 . . . . . . . . . 10 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → 𝑡 ∈ ℝ)
4241recnd 10181 . . . . . . . . 9 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → 𝑡 ∈ ℂ)
4353ad2ant1 1125 . . . . . . . . . 10 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → 𝐴 ∈ ℂ)
4443, 40subcld 10505 . . . . . . . . 9 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (𝐴𝐵) ∈ ℂ)
4542, 44mulcld 10173 . . . . . . . 8 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (𝑡 · (𝐴𝐵)) ∈ ℂ)
4640, 45pncan2d 10507 . . . . . . 7 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐵 + (𝑡 · (𝐴𝐵))) − 𝐵) = (𝑡 · (𝐴𝐵)))
4739, 46eqtrd 2758 . . . . . 6 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (𝐶𝐵) = (𝑡 · (𝐴𝐵)))
4847oveq1d 6780 . . . . 5 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐶𝐵)𝐺(𝐴𝐵)) = ((𝑡 · (𝐴𝐵))𝐺(𝐴𝐵)))
4942, 44mulcomd 10174 . . . . . 6 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (𝑡 · (𝐴𝐵)) = ((𝐴𝐵) · 𝑡))
5049oveq1d 6780 . . . . 5 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝑡 · (𝐴𝐵))𝐺(𝐴𝐵)) = (((𝐴𝐵) · 𝑡)𝐺(𝐴𝐵)))
5148, 50eqtrd 2758 . . . 4 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐶𝐵)𝐺(𝐴𝐵)) = (((𝐴𝐵) · 𝑡)𝐺(𝐴𝐵)))
5244, 42mulcld 10173 . . . . . 6 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐴𝐵) · 𝑡) ∈ ℂ)
531sigarac 41464 . . . . . 6 ((((𝐴𝐵) · 𝑡) ∈ ℂ ∧ (𝐴𝐵) ∈ ℂ) → (((𝐴𝐵) · 𝑡)𝐺(𝐴𝐵)) = -((𝐴𝐵)𝐺((𝐴𝐵) · 𝑡)))
5452, 44, 53syl2anc 696 . . . . 5 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (((𝐴𝐵) · 𝑡)𝐺(𝐴𝐵)) = -((𝐴𝐵)𝐺((𝐴𝐵) · 𝑡)))
551sigarls 41469 . . . . . . . 8 (((𝐴𝐵) ∈ ℂ ∧ (𝐴𝐵) ∈ ℂ ∧ 𝑡 ∈ ℝ) → ((𝐴𝐵)𝐺((𝐴𝐵) · 𝑡)) = (((𝐴𝐵)𝐺(𝐴𝐵)) · 𝑡))
5644, 44, 41, 55syl3anc 1439 . . . . . . 7 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐴𝐵)𝐺((𝐴𝐵) · 𝑡)) = (((𝐴𝐵)𝐺(𝐴𝐵)) · 𝑡))
571sigarid 41470 . . . . . . . . 9 ((𝐴𝐵) ∈ ℂ → ((𝐴𝐵)𝐺(𝐴𝐵)) = 0)
5844, 57syl 17 . . . . . . . 8 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐴𝐵)𝐺(𝐴𝐵)) = 0)
5958oveq1d 6780 . . . . . . 7 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (((𝐴𝐵)𝐺(𝐴𝐵)) · 𝑡) = (0 · 𝑡))
6042mul02d 10347 . . . . . . 7 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (0 · 𝑡) = 0)
6156, 59, 603eqtrd 2762 . . . . . 6 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐴𝐵)𝐺((𝐴𝐵) · 𝑡)) = 0)
6261negeqd 10388 . . . . 5 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → -((𝐴𝐵)𝐺((𝐴𝐵) · 𝑡)) = -0)
63 neg0 10440 . . . . . 6 -0 = 0
6463a1i 11 . . . . 5 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → -0 = 0)
6554, 62, 643eqtrd 2762 . . . 4 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → (((𝐴𝐵) · 𝑡)𝐺(𝐴𝐵)) = 0)
6637, 51, 653eqtrd 2762 . . 3 ((𝜑𝑡 ∈ ℝ ∧ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))) → ((𝐴𝐶)𝐺(𝐵𝐶)) = 0)
6766rexlimdv3a 3135 . 2 (𝜑 → (∃𝑡 ∈ ℝ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵))) → ((𝐴𝐶)𝐺(𝐵𝐶)) = 0))
6836, 67impbid 202 1 (𝜑 → (((𝐴𝐶)𝐺(𝐵𝐶)) = 0 ↔ ∃𝑡 ∈ ℝ 𝐶 = (𝐵 + (𝑡 · (𝐴𝐵)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 383  w3a 1072   = wceq 1596  wcel 2103  wrex 3015  cfv 6001  (class class class)co 6765  cmpt2 6767  cc 10047  cr 10048  0cc0 10049   + caddc 10052   · cmul 10054  cmin 10379  -cneg 10380   / cdiv 10797  ccj 13956  cim 13958
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1835  ax-4 1850  ax-5 1952  ax-6 2018  ax-7 2054  ax-8 2105  ax-9 2112  ax-10 2132  ax-11 2147  ax-12 2160  ax-13 2355  ax-ext 2704  ax-sep 4889  ax-nul 4897  ax-pow 4948  ax-pr 5011  ax-un 7066  ax-resscn 10106  ax-1cn 10107  ax-icn 10108  ax-addcl 10109  ax-addrcl 10110  ax-mulcl 10111  ax-mulrcl 10112  ax-mulcom 10113  ax-addass 10114  ax-mulass 10115  ax-distr 10116  ax-i2m1 10117  ax-1ne0 10118  ax-1rid 10119  ax-rnegex 10120  ax-rrecex 10121  ax-cnre 10122  ax-pre-lttri 10123  ax-pre-lttrn 10124  ax-pre-ltadd 10125  ax-pre-mulgt0 10126
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1073  df-3an 1074  df-tru 1599  df-ex 1818  df-nf 1823  df-sb 2011  df-eu 2575  df-mo 2576  df-clab 2711  df-cleq 2717  df-clel 2720  df-nfc 2855  df-ne 2897  df-nel 3000  df-ral 3019  df-rex 3020  df-reu 3021  df-rmo 3022  df-rab 3023  df-v 3306  df-sbc 3542  df-csb 3640  df-dif 3683  df-un 3685  df-in 3687  df-ss 3694  df-nul 4024  df-if 4195  df-pw 4268  df-sn 4286  df-pr 4288  df-op 4292  df-uni 4545  df-br 4761  df-opab 4821  df-mpt 4838  df-id 5128  df-po 5139  df-so 5140  df-xp 5224  df-rel 5225  df-cnv 5226  df-co 5227  df-dm 5228  df-rn 5229  df-res 5230  df-ima 5231  df-iota 5964  df-fun 6003  df-fn 6004  df-f 6005  df-f1 6006  df-fo 6007  df-f1o 6008  df-fv 6009  df-riota 6726  df-ov 6768  df-oprab 6769  df-mpt2 6770  df-er 7862  df-en 8073  df-dom 8074  df-sdom 8075  df-pnf 10189  df-mnf 10190  df-xr 10191  df-ltxr 10192  df-le 10193  df-sub 10381  df-neg 10382  df-div 10798  df-2 11192  df-cj 13959  df-re 13960  df-im 13961
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator