Users' Mathboxes Mathbox for Jiamin Zhao < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  crosspval Structured version   Visualization version   GIF version

Theorem crosspval 50695
Description: Value of the cross product of two 3-dimensional real coordinate vectors as a function on (1...3). (Contributed by Jiamin Zhao, 31-Jul-2026.)
Assertion
Ref Expression
crosspval ((𝐴 ∈ (ℝ ↑m (1...3)) ∧ 𝐵 ∈ (ℝ ↑m (1...3))) → (𝐴𝐵) = (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))))
Distinct variable groups:   𝐴,𝑘   𝐵,𝑘

Proof of Theorem crosspval
Dummy variables 𝑢 𝑣 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fveq1 6884 . . . . . 6 (𝑢 = 𝐴 → (𝑢‘2) = (𝐴‘2))
21oveq1d 7434 . . . . 5 (𝑢 = 𝐴 → ((𝑢‘2) · (𝑣‘3)) = ((𝐴‘2) · (𝑣‘3)))
3 fveq1 6884 . . . . . 6 (𝑢 = 𝐴 → (𝑢‘3) = (𝐴‘3))
43oveq1d 7434 . . . . 5 (𝑢 = 𝐴 → ((𝑢‘3) · (𝑣‘2)) = ((𝐴‘3) · (𝑣‘2)))
52, 4oveq12d 7437 . . . 4 (𝑢 = 𝐴 → (((𝑢‘2) · (𝑣‘3)) − ((𝑢‘3) · (𝑣‘2))) = (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))))
63oveq1d 7434 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘3) · (𝑣‘1)) = ((𝐴‘3) · (𝑣‘1)))
7 fveq1 6884 . . . . . . 7 (𝑢 = 𝐴 → (𝑢‘1) = (𝐴‘1))
87oveq1d 7434 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘1) · (𝑣‘3)) = ((𝐴‘1) · (𝑣‘3)))
96, 8oveq12d 7437 . . . . 5 (𝑢 = 𝐴 → (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))) = (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))))
107oveq1d 7434 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘1) · (𝑣‘2)) = ((𝐴‘1) · (𝑣‘2)))
111oveq1d 7434 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘2) · (𝑣‘1)) = ((𝐴‘2) · (𝑣‘1)))
1210, 11oveq12d 7437 . . . . 5 (𝑢 = 𝐴 → (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1))) = (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1))))
139, 12ifeq12d 4511 . . . 4 (𝑢 = 𝐴 → if(𝑘 = 2, (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))), (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1)))) = if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1)))))
145, 13ifeq12d 4511 . . 3 (𝑢 = 𝐴 → if(𝑘 = 1, (((𝑢‘2) · (𝑣‘3)) − ((𝑢‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))), (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1))))) = if(𝑘 = 1, (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1))))))
1514mpteq2dv 5207 . 2 (𝑢 = 𝐴 → (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝑢‘2) · (𝑣‘3)) − ((𝑢‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))), (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1)))))) = (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1)))))))
16 fveq1 6884 . . . . . 6 (𝑣 = 𝐵 → (𝑣‘3) = (𝐵‘3))
1716oveq2d 7435 . . . . 5 (𝑣 = 𝐵 → ((𝐴‘2) · (𝑣‘3)) = ((𝐴‘2) · (𝐵‘3)))
18 fveq1 6884 . . . . . 6 (𝑣 = 𝐵 → (𝑣‘2) = (𝐵‘2))
1918oveq2d 7435 . . . . 5 (𝑣 = 𝐵 → ((𝐴‘3) · (𝑣‘2)) = ((𝐴‘3) · (𝐵‘2)))
2017, 19oveq12d 7437 . . . 4 (𝑣 = 𝐵 → (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))) = (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))))
21 fveq1 6884 . . . . . . 7 (𝑣 = 𝐵 → (𝑣‘1) = (𝐵‘1))
2221oveq2d 7435 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘3) · (𝑣‘1)) = ((𝐴‘3) · (𝐵‘1)))
2316oveq2d 7435 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘1) · (𝑣‘3)) = ((𝐴‘1) · (𝐵‘3)))
2422, 23oveq12d 7437 . . . . 5 (𝑣 = 𝐵 → (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))) = (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))))
2518oveq2d 7435 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘1) · (𝑣‘2)) = ((𝐴‘1) · (𝐵‘2)))
2621oveq2d 7435 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘2) · (𝑣‘1)) = ((𝐴‘2) · (𝐵‘1)))
2725, 26oveq12d 7437 . . . . 5 (𝑣 = 𝐵 → (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1))) = (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))))
2824, 27ifeq12d 4511 . . . 4 (𝑣 = 𝐵 → if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1)))) = if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))
2920, 28ifeq12d 4511 . . 3 (𝑣 = 𝐵 → if(𝑘 = 1, (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1))))) = if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))))))
3029mpteq2dv 5207 . 2 (𝑣 = 𝐵 → (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1)))))) = (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))))
31 df-crossp 50692 . 2 ⊠ = (𝑢 ∈ (ℝ ↑m (1...3)), 𝑣 ∈ (ℝ ↑m (1...3)) ↦ (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝑢‘2) · (𝑣‘3)) − ((𝑢‘3) · (𝑣‘2))), if(𝑘 = 2, (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))), (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1)))))))
32 ovex 7452 . . 3 (1...3) ∈ V
3332mptex 7228 . 2 (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))) ∈ V
3415, 30, 31, 33ovmpo 7579 1 ((𝐴 ∈ (ℝ ↑m (1...3)) ∧ 𝐵 ∈ (ℝ ↑m (1...3))) → (𝐴𝐵) = (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2146  ifcif 4489  cmpt 5194  cfv 6540  (class class class)co 7419  m cmap 8830  cr 11116  1c1 11118   · cmul 11122  cmin 11458  2c2 12312  3c3 12313  ...cfz 13553  ccrossp 50691
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pr 5406
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3082  df-rex 3092  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-nul 4287  df-if 4490  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-id 5558  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-ov 7422  df-oprab 7423  df-mpo 7424  df-crossp 50692
This theorem is used by:  crosspcld  50700  crosspv1d  50701  crosspv2d  50702  crosspv3d  50703
  Copyright terms: Public domain W3C validator