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 36167
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 2736 . . . . 5 [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear
2 fveq2 6881 . . . . . . . . 9 (𝑛 = 𝑁 → (𝔼‘𝑛) = (𝔼‘𝑁))
32eleq2d 2821 . . . . . . . 8 (𝑛 = 𝑁 → (𝐴 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑁)))
42eleq2d 2821 . . . . . . . 8 (𝑛 = 𝑁 → (𝐵 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑁)))
53, 43anbi12d 1439 . . . . . . 7 (𝑛 = 𝑁 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ↔ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)))
65anbi1d 631 . . . . . 6 (𝑛 = 𝑁 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
76rspcev 3606 . . . . 5 ((𝑁 ∈ ℕ ∧ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
81, 7mpanr2 704 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
9 simpr1 1195 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐴 ∈ (𝔼‘𝑁))
10 simpr2 1196 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐵 ∈ (𝔼‘𝑁))
11 colinearex 36083 . . . . . . . 8 Colinear ∈ V
1211cnvex 7926 . . . . . . 7 Colinear ∈ V
13 ecexg 8728 . . . . . . 7 ( Colinear ∈ V → [⟨𝐴, 𝐵⟩] Colinear ∈ V)
1412, 13ax-mp 5 . . . . . 6 [⟨𝐴, 𝐵⟩] Colinear ∈ V
15 eleq1 2823 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑛)))
16 neeq1 2995 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎𝑏𝐴𝑏))
1715, 163anbi13d 1440 . . . . . . . . 9 (𝑎 = 𝐴 → ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏)))
18 opeq1 4854 . . . . . . . . . . 11 (𝑎 = 𝐴 → ⟨𝑎, 𝑏⟩ = ⟨𝐴, 𝑏⟩)
1918eceq1d 8764 . . . . . . . . . 10 (𝑎 = 𝐴 → [⟨𝑎, 𝑏⟩] Colinear = [⟨𝐴, 𝑏⟩] Colinear )
2019eqeq2d 2747 . . . . . . . . 9 (𝑎 = 𝐴 → (𝑙 = [⟨𝑎, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ))
2117, 20anbi12d 632 . . . . . . . 8 (𝑎 = 𝐴 → (((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
2221rexbidv 3165 . . . . . . 7 (𝑎 = 𝐴 → (∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
23 eleq1 2823 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝑏 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑛)))
24 neeq2 2996 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝐴𝑏𝐴𝐵))
2523, 243anbi23d 1441 . . . . . . . . 9 (𝑏 = 𝐵 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵)))
26 opeq2 4855 . . . . . . . . . . 11 (𝑏 = 𝐵 → ⟨𝐴, 𝑏⟩ = ⟨𝐴, 𝐵⟩)
2726eceq1d 8764 . . . . . . . . . 10 (𝑏 = 𝐵 → [⟨𝐴, 𝑏⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )
2827eqeq2d 2747 . . . . . . . . 9 (𝑏 = 𝐵 → (𝑙 = [⟨𝐴, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ))
2925, 28anbi12d 632 . . . . . . . 8 (𝑏 = 𝐵 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
3029rexbidv 3165 . . . . . . 7 (𝑏 = 𝐵 → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
31 eqeq1 2740 . . . . . . . . 9 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (𝑙 = [⟨𝐴, 𝐵⟩] Colinear ↔ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
3231anbi2d 630 . . . . . . . 8 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3332rexbidv 3165 . . . . . . 7 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3422, 30, 33eloprabg 7522 . . . . . 6 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ [⟨𝐴, 𝐵⟩] Colinear ∈ V) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3514, 34mp3an3 1452 . . . . 5 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
369, 10, 35syl2anc 584 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
378, 36mpbird 257 . . 3 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
38 df-ov 7413 . . . 4 (𝐴Line𝐵) = (Line‘⟨𝐴, 𝐵⟩)
39 df-br 5125 . . . . . 6 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line)
40 df-line2 36160 . . . . . . 7 Line = {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )}
4140eleq2i 2827 . . . . . 6 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
4239, 41bitri 275 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
43 funline 36165 . . . . . 6 Fun Line
44 funbrfv 6932 . . . . . 6 (Fun Line → (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear ))
4543, 44ax-mp 5 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4642, 45sylbir 235 . . . 4 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4738, 46eqtrid 2783 . . 3 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
4837, 47syl 17 . 2 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
49 opex 5444 . . . 4 𝐴, 𝐵⟩ ∈ V
50 dfec2 8727 . . . 4 (⟨𝐴, 𝐵⟩ ∈ V → [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥})
5149, 50ax-mp 5 . . 3 [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥}
52 vex 3468 . . . . 5 𝑥 ∈ V
5349, 52brcnv 5867 . . . 4 (⟨𝐴, 𝐵 Colinear 𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩)
5453abbii 2803 . . 3 {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥} = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5551, 54eqtri 2759 . 2 [⟨𝐴, 𝐵⟩] Colinear = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5648, 55eqtrdi 2787 1 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1540  wcel 2109  {cab 2714  wne 2933  wrex 3061  Vcvv 3464  cop 4612   class class class wbr 5124  ccnv 5658  Fun wfun 6530  cfv 6536  (class class class)co 7410  {coprab 7411  [cec 8722  cn 12245  𝔼cee 28872   Colinear ccolin 36060  Linecline2 36157
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2708  ax-rep 5254  ax-sep 5271  ax-nul 5281  ax-pow 5340  ax-pr 5407  ax-un 7734  ax-cnex 11190  ax-1cn 11192  ax-addcl 11194
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2540  df-eu 2569  df-clab 2715  df-cleq 2728  df-clel 2810  df-nfc 2886  df-ne 2934  df-ral 3053  df-rex 3062  df-reu 3365  df-rab 3421  df-v 3466  df-sbc 3771  df-csb 3880  df-dif 3934  df-un 3936  df-in 3938  df-ss 3948  df-pss 3951  df-nul 4314  df-if 4506  df-pw 4582  df-sn 4607  df-pr 4609  df-op 4613  df-uni 4889  df-iun 4974  df-br 5125  df-opab 5187  df-mpt 5207  df-tr 5235  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-we 5613  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6295  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  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 7867  df-2nd 7994  df-frecs 8285  df-wrecs 8316  df-recs 8390  df-rdg 8429  df-ec 8726  df-nn 12246  df-colinear 36062  df-line2 36160
This theorem is referenced by:  liness  36168  fvline2  36169  ellines  36175
  Copyright terms: Public domain W3C validator