Users' Mathboxes Mathbox for Scott Fenton < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  fvline Structured version   Visualization version   GIF version

Theorem fvline 36636
Description: Calculate the value of the Line function. (Contributed by Scott Fenton, 25-Oct-2013.) (Revised by Mario Carneiro, 19-Apr-2014.)
Assertion
Ref Expression
fvline ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩})
Distinct variable groups:   𝑥,𝐴   𝑥,𝐵
Allowed substitution hint:   𝑁(𝑥)

Proof of Theorem fvline
Dummy variables 𝑎 𝑏 𝑙 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2763 . . . . 5 [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear
2 fveq2 6881 . . . . . . . . 9 (𝑛 = 𝑁 → (𝔼‘𝑛) = (𝔼‘𝑁))
32eleq2d 2849 . . . . . . . 8 (𝑛 = 𝑁 → (𝐴 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑁)))
42eleq2d 2849 . . . . . . . 8 (𝑛 = 𝑁 → (𝐵 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑁)))
53, 43anbi12d 1465 . . . . . . 7 (𝑛 = 𝑁 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ↔ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)))
65anbi1d 642 . . . . . 6 (𝑛 = 𝑁 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
76rspcev 3581 . . . . 5 ((𝑁 ∈ ℕ ∧ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
81, 7mpanr2 716 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
9 simpr1 1213 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐴 ∈ (𝔼‘𝑁))
10 simpr2 1214 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐵 ∈ (𝔼‘𝑁))
11 colinearex 36552 . . . . . . . 8 Colinear ∈ V
1211cnvex 7918 . . . . . . 7 Colinear ∈ V
13 ecexg 8694 . . . . . . 7 ( Colinear ∈ V → [⟨𝐴, 𝐵⟩] Colinear ∈ V)
1412, 13ax-mp 5 . . . . . 6 [⟨𝐴, 𝐵⟩] Colinear ∈ V
15 eleq1 2851 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑛)))
16 neeq1 3020 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎𝑏𝐴𝑏))
1715, 163anbi13d 1466 . . . . . . . . 9 (𝑎 = 𝐴 → ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏)))
18 opeq1 4838 . . . . . . . . . . 11 (𝑎 = 𝐴 → ⟨𝑎, 𝑏⟩ = ⟨𝐴, 𝑏⟩)
1918eceq1d 8731 . . . . . . . . . 10 (𝑎 = 𝐴 → [⟨𝑎, 𝑏⟩] Colinear = [⟨𝐴, 𝑏⟩] Colinear )
2019eqeq2d 2774 . . . . . . . . 9 (𝑎 = 𝐴 → (𝑙 = [⟨𝑎, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ))
2117, 20anbi12d 643 . . . . . . . 8 (𝑎 = 𝐴 → (((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
2221rexbidv 3189 . . . . . . 7 (𝑎 = 𝐴 → (∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
23 eleq1 2851 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝑏 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑛)))
24 neeq2 3021 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝐴𝑏𝐴𝐵))
2523, 243anbi23d 1467 . . . . . . . . 9 (𝑏 = 𝐵 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵)))
26 opeq2 4839 . . . . . . . . . . 11 (𝑏 = 𝐵 → ⟨𝐴, 𝑏⟩ = ⟨𝐴, 𝐵⟩)
2726eceq1d 8731 . . . . . . . . . 10 (𝑏 = 𝐵 → [⟨𝐴, 𝑏⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )
2827eqeq2d 2774 . . . . . . . . 9 (𝑏 = 𝐵 → (𝑙 = [⟨𝐴, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ))
2925, 28anbi12d 643 . . . . . . . 8 (𝑏 = 𝐵 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
3029rexbidv 3189 . . . . . . 7 (𝑏 = 𝐵 → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
31 eqeq1 2767 . . . . . . . . 9 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (𝑙 = [⟨𝐴, 𝐵⟩] Colinear ↔ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
3231anbi2d 641 . . . . . . . 8 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3332rexbidv 3189 . . . . . . 7 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3422, 30, 33eloprabg 7520 . . . . . 6 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ [⟨𝐴, 𝐵⟩] Colinear ∈ V) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3514, 34mp3an3 1479 . . . . 5 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
369, 10, 35syl2anc 595 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
378, 36mpbird 260 . . 3 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
38 df-ov 7413 . . . 4 (𝐴Line𝐵) = (Line‘⟨𝐴, 𝐵⟩)
39 df-br 5110 . . . . . 6 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line)
40 df-line2 36629 . . . . . . 7 Line = {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )}
4140eleq2i 2855 . . . . . 6 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
4239, 41bitri 278 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
43 funline 36634 . . . . . 6 Fun Line
44 funbrfv 6929 . . . . . 6 (Fun Line → (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear ))
4543, 44ax-mp 5 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4642, 45sylbir 238 . . . 4 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4738, 46eqtrid 2810 . . 3 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
4837, 47syl 18 . 2 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
49 opex 5445 . . . 4 𝐴, 𝐵⟩ ∈ V
50 dfec2 8693 . . . 4 (⟨𝐴, 𝐵⟩ ∈ V → [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥})
5149, 50ax-mp 5 . . 3 [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥}
52 vex 3459 . . . . 5 𝑥 ∈ V
5349, 52brcnv 5868 . . . 4 (⟨𝐴, 𝐵 Colinear 𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩)
5453abbii 2830 . . 3 {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥} = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5551, 54eqtri 2786 . 2 [⟨𝐴, 𝐵⟩] Colinear = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5648, 55eqtrdi 2814 1 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400  w3a 1103   = wceq 1570  wcel 2143  {cab 2741  wne 2958  wrex 3089  Vcvv 3455  cop 4595   class class class wbr 5109  ccnv 5660  Fun wfun 6530  cfv 6536  (class class class)co 7410  {coprab 7411  [cec 8688  cn 12228  𝔼cee 29237   Colinear ccolin 36529  Linecline2 36626
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-rep 5238  ax-sep 5257  ax-nul 5269  ax-pow 5336  ax-pr 5404  ax-un 7732  ax-cnex 11151  ax-1cn 11153  ax-addcl 11155
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-ral 3080  df-rex 3090  df-reu 3370  df-rab 3417  df-v 3457  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-pss 3925  df-nul 4287  df-if 4488  df-pw 4564  df-sn 4590  df-pr 4592  df-op 4596  df-uni 4873  df-iun 4958  df-br 5110  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5556  df-eprel 5561  df-po 5569  df-so 5570  df-fr 5614  df-we 5616  df-xp 5667  df-rel 5668  df-cnv 5669  df-co 5670  df-dm 5671  df-rn 5672  df-res 5673  df-ima 5674  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-ov 7413  df-oprab 7414  df-om 7859  df-2nd 7983  df-frecs 8274  df-wrecs 8305  df-recs 8354  df-rdg 8393  df-ec 8692  df-nn 12229  df-colinear 36531  df-line2 36629
This theorem is referenced by:  liness  36637  fvline2  36638  ellines  36644
  Copyright terms: Public domain W3C validator