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 32790
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 2825 . . . . 5 [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear
2 fveq2 6433 . . . . . . . . 9 (𝑛 = 𝑁 → (𝔼‘𝑛) = (𝔼‘𝑁))
32eleq2d 2892 . . . . . . . 8 (𝑛 = 𝑁 → (𝐴 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑁)))
42eleq2d 2892 . . . . . . . 8 (𝑛 = 𝑁 → (𝐵 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑁)))
53, 43anbi12d 1567 . . . . . . 7 (𝑛 = 𝑁 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ↔ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)))
65anbi1d 625 . . . . . 6 (𝑛 = 𝑁 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
76rspcev 3526 . . . . 5 ((𝑁 ∈ ℕ ∧ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
81, 7mpanr2 697 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
9 simpr1 1254 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐴 ∈ (𝔼‘𝑁))
10 simpr2 1256 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐵 ∈ (𝔼‘𝑁))
11 colinearex 32706 . . . . . . . 8 Colinear ∈ V
1211cnvex 7375 . . . . . . 7 Colinear ∈ V
13 ecexg 8013 . . . . . . 7 ( Colinear ∈ V → [⟨𝐴, 𝐵⟩] Colinear ∈ V)
1412, 13ax-mp 5 . . . . . 6 [⟨𝐴, 𝐵⟩] Colinear ∈ V
15 eleq1 2894 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑛)))
16 neeq1 3061 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎𝑏𝐴𝑏))
1715, 163anbi13d 1568 . . . . . . . . 9 (𝑎 = 𝐴 → ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏)))
18 opeq1 4623 . . . . . . . . . . 11 (𝑎 = 𝐴 → ⟨𝑎, 𝑏⟩ = ⟨𝐴, 𝑏⟩)
1918eceq1d 8048 . . . . . . . . . 10 (𝑎 = 𝐴 → [⟨𝑎, 𝑏⟩] Colinear = [⟨𝐴, 𝑏⟩] Colinear )
2019eqeq2d 2835 . . . . . . . . 9 (𝑎 = 𝐴 → (𝑙 = [⟨𝑎, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ))
2117, 20anbi12d 626 . . . . . . . 8 (𝑎 = 𝐴 → (((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
2221rexbidv 3262 . . . . . . 7 (𝑎 = 𝐴 → (∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
23 eleq1 2894 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝑏 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑛)))
24 neeq2 3062 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝐴𝑏𝐴𝐵))
2523, 243anbi23d 1569 . . . . . . . . 9 (𝑏 = 𝐵 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵)))
26 opeq2 4624 . . . . . . . . . . 11 (𝑏 = 𝐵 → ⟨𝐴, 𝑏⟩ = ⟨𝐴, 𝐵⟩)
2726eceq1d 8048 . . . . . . . . . 10 (𝑏 = 𝐵 → [⟨𝐴, 𝑏⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )
2827eqeq2d 2835 . . . . . . . . 9 (𝑏 = 𝐵 → (𝑙 = [⟨𝐴, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ))
2925, 28anbi12d 626 . . . . . . . 8 (𝑏 = 𝐵 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
3029rexbidv 3262 . . . . . . 7 (𝑏 = 𝐵 → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
31 eqeq1 2829 . . . . . . . . 9 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (𝑙 = [⟨𝐴, 𝐵⟩] Colinear ↔ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
3231anbi2d 624 . . . . . . . 8 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3332rexbidv 3262 . . . . . . 7 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3422, 30, 33eloprabg 7008 . . . . . 6 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ [⟨𝐴, 𝐵⟩] Colinear ∈ V) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3514, 34mp3an3 1580 . . . . 5 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
369, 10, 35syl2anc 581 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
378, 36mpbird 249 . . 3 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
38 df-ov 6908 . . . 4 (𝐴Line𝐵) = (Line‘⟨𝐴, 𝐵⟩)
39 df-br 4874 . . . . . 6 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line)
40 df-line2 32783 . . . . . . 7 Line = {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )}
4140eleq2i 2898 . . . . . 6 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
4239, 41bitri 267 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
43 funline 32788 . . . . . 6 Fun Line
44 funbrfv 6480 . . . . . 6 (Fun Line → (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear ))
4543, 44ax-mp 5 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4642, 45sylbir 227 . . . 4 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4738, 46syl5eq 2873 . . 3 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
4837, 47syl 17 . 2 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
49 opex 5153 . . . 4 𝐴, 𝐵⟩ ∈ V
50 dfec2 8012 . . . 4 (⟨𝐴, 𝐵⟩ ∈ V → [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥})
5149, 50ax-mp 5 . . 3 [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥}
52 vex 3417 . . . . 5 𝑥 ∈ V
5349, 52brcnv 5537 . . . 4 (⟨𝐴, 𝐵 Colinear 𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩)
5453abbii 2944 . . 3 {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥} = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5551, 54eqtri 2849 . 2 [⟨𝐴, 𝐵⟩] Colinear = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5648, 55syl6eq 2877 1 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 198  wa 386  w3a 1113   = wceq 1658  wcel 2166  {cab 2811  wne 2999  wrex 3118  Vcvv 3414  cop 4403   class class class wbr 4873  ccnv 5341  Fun wfun 6117  cfv 6123  (class class class)co 6905  {coprab 6906  [cec 8007  cn 11350  𝔼cee 26187   Colinear ccolin 32683  Linecline2 32780
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1896  ax-4 1910  ax-5 2011  ax-6 2077  ax-7 2114  ax-8 2168  ax-9 2175  ax-10 2194  ax-11 2209  ax-12 2222  ax-13 2391  ax-ext 2803  ax-rep 4994  ax-sep 5005  ax-nul 5013  ax-pow 5065  ax-pr 5127  ax-un 7209  ax-cnex 10308  ax-1cn 10310  ax-addcl 10312
This theorem depends on definitions:  df-bi 199  df-an 387  df-or 881  df-3or 1114  df-3an 1115  df-tru 1662  df-ex 1881  df-nf 1885  df-sb 2070  df-mo 2605  df-eu 2640  df-clab 2812  df-cleq 2818  df-clel 2821  df-nfc 2958  df-ne 3000  df-ral 3122  df-rex 3123  df-reu 3124  df-rab 3126  df-v 3416  df-sbc 3663  df-csb 3758  df-dif 3801  df-un 3803  df-in 3805  df-ss 3812  df-pss 3814  df-nul 4145  df-if 4307  df-pw 4380  df-sn 4398  df-pr 4400  df-tp 4402  df-op 4404  df-uni 4659  df-iun 4742  df-br 4874  df-opab 4936  df-mpt 4953  df-tr 4976  df-id 5250  df-eprel 5255  df-po 5263  df-so 5264  df-fr 5301  df-we 5303  df-xp 5348  df-rel 5349  df-cnv 5350  df-co 5351  df-dm 5352  df-rn 5353  df-res 5354  df-ima 5355  df-pred 5920  df-ord 5966  df-on 5967  df-lim 5968  df-suc 5969  df-iota 6086  df-fun 6125  df-fn 6126  df-f 6127  df-f1 6128  df-fo 6129  df-f1o 6130  df-fv 6131  df-ov 6908  df-oprab 6909  df-om 7327  df-wrecs 7672  df-recs 7734  df-rdg 7772  df-ec 8011  df-nn 11351  df-colinear 32685  df-line2 32783
This theorem is referenced by:  liness  32791  fvline2  32792  ellines  32798
  Copyright terms: Public domain W3C validator