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 36372
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 2739 . . . . 5 [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear
2 fveq2 6827 . . . . . . . . 9 (𝑛 = 𝑁 → (𝔼‘𝑛) = (𝔼‘𝑁))
32eleq2d 2825 . . . . . . . 8 (𝑛 = 𝑁 → (𝐴 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑁)))
42eleq2d 2825 . . . . . . . 8 (𝑛 = 𝑁 → (𝐵 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑁)))
53, 43anbi12d 1445 . . . . . . 7 (𝑛 = 𝑁 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ↔ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)))
65anbi1d 637 . . . . . 6 (𝑛 = 𝑁 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
76rspcev 3560 . . . . 5 ((𝑁 ∈ ℕ ∧ ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
81, 7mpanr2 710 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
9 simpr1 1201 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐴 ∈ (𝔼‘𝑁))
10 simpr2 1202 . . . . 5 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → 𝐵 ∈ (𝔼‘𝑁))
11 colinearex 36288 . . . . . . . 8 Colinear ∈ V
1211cnvex 7865 . . . . . . 7 Colinear ∈ V
13 ecexg 8637 . . . . . . 7 ( Colinear ∈ V → [⟨𝐴, 𝐵⟩] Colinear ∈ V)
1412, 13ax-mp 5 . . . . . 6 [⟨𝐴, 𝐵⟩] Colinear ∈ V
15 eleq1 2827 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎 ∈ (𝔼‘𝑛) ↔ 𝐴 ∈ (𝔼‘𝑛)))
16 neeq1 2996 . . . . . . . . . 10 (𝑎 = 𝐴 → (𝑎𝑏𝐴𝑏))
1715, 163anbi13d 1446 . . . . . . . . 9 (𝑎 = 𝐴 → ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏)))
18 opeq1 4804 . . . . . . . . . . 11 (𝑎 = 𝐴 → ⟨𝑎, 𝑏⟩ = ⟨𝐴, 𝑏⟩)
1918eceq1d 8674 . . . . . . . . . 10 (𝑎 = 𝐴 → [⟨𝑎, 𝑏⟩] Colinear = [⟨𝐴, 𝑏⟩] Colinear )
2019eqeq2d 2750 . . . . . . . . 9 (𝑎 = 𝐴 → (𝑙 = [⟨𝑎, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ))
2117, 20anbi12d 638 . . . . . . . 8 (𝑎 = 𝐴 → (((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
2221rexbidv 3163 . . . . . . 7 (𝑎 = 𝐴 → (∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear )))
23 eleq1 2827 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝑏 ∈ (𝔼‘𝑛) ↔ 𝐵 ∈ (𝔼‘𝑛)))
24 neeq2 2997 . . . . . . . . . 10 (𝑏 = 𝐵 → (𝐴𝑏𝐴𝐵))
2523, 243anbi23d 1447 . . . . . . . . 9 (𝑏 = 𝐵 → ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ↔ (𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵)))
26 opeq2 4805 . . . . . . . . . . 11 (𝑏 = 𝐵 → ⟨𝐴, 𝑏⟩ = ⟨𝐴, 𝐵⟩)
2726eceq1d 8674 . . . . . . . . . 10 (𝑏 = 𝐵 → [⟨𝐴, 𝑏⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )
2827eqeq2d 2750 . . . . . . . . 9 (𝑏 = 𝐵 → (𝑙 = [⟨𝐴, 𝑏⟩] Colinear ↔ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ))
2925, 28anbi12d 638 . . . . . . . 8 (𝑏 = 𝐵 → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
3029rexbidv 3163 . . . . . . 7 (𝑏 = 𝐵 → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝐴𝑏) ∧ 𝑙 = [⟨𝐴, 𝑏⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear )))
31 eqeq1 2743 . . . . . . . . 9 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (𝑙 = [⟨𝐴, 𝐵⟩] Colinear ↔ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear ))
3231anbi2d 636 . . . . . . . 8 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3332rexbidv 3163 . . . . . . 7 (𝑙 = [⟨𝐴, 𝐵⟩] Colinear → (∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ 𝑙 = [⟨𝐴, 𝐵⟩] Colinear ) ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3422, 30, 33eloprabg 7466 . . . . . 6 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ [⟨𝐴, 𝐵⟩] Colinear ∈ V) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
3514, 34mp3an3 1458 . . . . 5 ((𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
369, 10, 35syl2anc 590 . . . 4 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} ↔ ∃𝑛 ∈ ℕ ((𝐴 ∈ (𝔼‘𝑛) ∧ 𝐵 ∈ (𝔼‘𝑛) ∧ 𝐴𝐵) ∧ [⟨𝐴, 𝐵⟩] Colinear = [⟨𝐴, 𝐵⟩] Colinear )))
378, 36mpbird 258 . . 3 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
38 df-ov 7359 . . . 4 (𝐴Line𝐵) = (Line‘⟨𝐴, 𝐵⟩)
39 df-br 5073 . . . . . 6 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line)
40 df-line2 36365 . . . . . . 7 Line = {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )}
4140eleq2i 2831 . . . . . 6 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ Line ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
4239, 41bitri 276 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear ↔ ⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )})
43 funline 36370 . . . . . 6 Fun Line
44 funbrfv 6875 . . . . . 6 (Fun Line → (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear ))
4543, 44ax-mp 5 . . . . 5 (⟨𝐴, 𝐵⟩Line[⟨𝐴, 𝐵⟩] Colinear → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4642, 45sylbir 236 . . . 4 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (Line‘⟨𝐴, 𝐵⟩) = [⟨𝐴, 𝐵⟩] Colinear )
4738, 46eqtrid 2786 . . 3 (⟨⟨𝐴, 𝐵⟩, [⟨𝐴, 𝐵⟩] Colinear ⟩ ∈ {⟨⟨𝑎, 𝑏⟩, 𝑙⟩ ∣ ∃𝑛 ∈ ℕ ((𝑎 ∈ (𝔼‘𝑛) ∧ 𝑏 ∈ (𝔼‘𝑛) ∧ 𝑎𝑏) ∧ 𝑙 = [⟨𝑎, 𝑏⟩] Colinear )} → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
4837, 47syl 17 . 2 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = [⟨𝐴, 𝐵⟩] Colinear )
49 opex 5403 . . . 4 𝐴, 𝐵⟩ ∈ V
50 dfec2 8636 . . . 4 (⟨𝐴, 𝐵⟩ ∈ V → [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥})
5149, 50ax-mp 5 . . 3 [⟨𝐴, 𝐵⟩] Colinear = {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥}
52 vex 3435 . . . . 5 𝑥 ∈ V
5349, 52brcnv 5824 . . . 4 (⟨𝐴, 𝐵 Colinear 𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩)
5453abbii 2806 . . 3 {𝑥 ∣ ⟨𝐴, 𝐵 Colinear 𝑥} = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5551, 54eqtri 2762 . 2 [⟨𝐴, 𝐵⟩] Colinear = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩}
5648, 55eqtrdi 2790 1 ((𝑁 ∈ ℕ ∧ (𝐴 ∈ (𝔼‘𝑁) ∧ 𝐵 ∈ (𝔼‘𝑁) ∧ 𝐴𝐵)) → (𝐴Line𝐵) = {𝑥𝑥 Colinear ⟨𝐴, 𝐵⟩})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 207  wa 396  w3a 1092   = wceq 1547  wcel 2119  {cab 2717  wne 2934  wrex 3063  Vcvv 3431  cop 4561   class class class wbr 5072  ccnv 5617  Fun wfun 6479  cfv 6485  (class class class)co 7356  {coprab 7357  [cec 8631  cn 12165  𝔼cee 28974   Colinear ccolin 36265  Linecline2 36362
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2711  ax-rep 5199  ax-sep 5218  ax-nul 5228  ax-pow 5294  ax-pr 5362  ax-un 7678  ax-cnex 11085  ax-1cn 11087  ax-addcl 11089
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-3or 1093  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2718  df-cleq 2731  df-clel 2814  df-nfc 2888  df-ne 2935  df-ral 3054  df-rex 3064  df-reu 3345  df-rab 3392  df-v 3433  df-sbc 3724  df-csb 3832  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3903  df-nul 4262  df-if 4455  df-pw 4531  df-sn 4556  df-pr 4558  df-op 4562  df-uni 4839  df-iun 4923  df-br 5073  df-opab 5135  df-mpt 5154  df-tr 5180  df-id 5513  df-eprel 5518  df-po 5526  df-so 5527  df-fr 5571  df-we 5573  df-xp 5624  df-rel 5625  df-cnv 5626  df-co 5627  df-dm 5628  df-rn 5629  df-res 5630  df-ima 5631  df-pred 6252  df-ord 6313  df-on 6314  df-lim 6315  df-suc 6316  df-iota 6441  df-fun 6487  df-fn 6488  df-f 6489  df-f1 6490  df-fo 6491  df-f1o 6492  df-fv 6493  df-ov 7359  df-oprab 7360  df-om 7807  df-2nd 7932  df-frecs 8221  df-wrecs 8252  df-recs 8301  df-rdg 8339  df-ec 8635  df-nn 12166  df-colinear 36267  df-line2 36365
This theorem is referenced by:  liness  36373  fvline2  36374  ellines  36380
  Copyright terms: Public domain W3C validator