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 51232
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 6904 . . . . . 6 (𝑢 = 𝐴 → (𝑢‘2) = (𝐴‘2))
21oveq1d 7455 . . . . 5 (𝑢 = 𝐴 → ((𝑢‘2) · (𝑣‘3)) = ((𝐴‘2) · (𝑣‘3)))
3 fveq1 6904 . . . . . 6 (𝑢 = 𝐴 → (𝑢‘3) = (𝐴‘3))
43oveq1d 7455 . . . . 5 (𝑢 = 𝐴 → ((𝑢‘3) · (𝑣‘2)) = ((𝐴‘3) · (𝑣‘2)))
52, 4oveq12d 7458 . . . 4 (𝑢 = 𝐴 → (((𝑢‘2) · (𝑣‘3)) − ((𝑢‘3) · (𝑣‘2))) = (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))))
63oveq1d 7455 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘3) · (𝑣‘1)) = ((𝐴‘3) · (𝑣‘1)))
7 fveq1 6904 . . . . . . 7 (𝑢 = 𝐴 → (𝑢‘1) = (𝐴‘1))
87oveq1d 7455 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘1) · (𝑣‘3)) = ((𝐴‘1) · (𝑣‘3)))
96, 8oveq12d 7458 . . . . 5 (𝑢 = 𝐴 → (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))) = (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))))
107oveq1d 7455 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘1) · (𝑣‘2)) = ((𝐴‘1) · (𝑣‘2)))
111oveq1d 7455 . . . . . 6 (𝑢 = 𝐴 → ((𝑢‘2) · (𝑣‘1)) = ((𝐴‘2) · (𝑣‘1)))
1210, 11oveq12d 7458 . . . . 5 (𝑢 = 𝐴 → (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1))) = (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1))))
139, 12ifeq12d 4507 . . . 4 (𝑢 = 𝐴 → if(𝑘 = 2, (((𝑢‘3) · (𝑣‘1)) − ((𝑢‘1) · (𝑣‘3))), (((𝑢‘1) · (𝑣‘2)) − ((𝑢‘2) · (𝑣‘1)))) = if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1)))))
145, 13ifeq12d 4507 . . 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 5202 . 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 6904 . . . . . 6 (𝑣 = 𝐵 → (𝑣‘3) = (𝐵‘3))
1716oveq2d 7456 . . . . 5 (𝑣 = 𝐵 → ((𝐴‘2) · (𝑣‘3)) = ((𝐴‘2) · (𝐵‘3)))
18 fveq1 6904 . . . . . 6 (𝑣 = 𝐵 → (𝑣‘2) = (𝐵‘2))
1918oveq2d 7456 . . . . 5 (𝑣 = 𝐵 → ((𝐴‘3) · (𝑣‘2)) = ((𝐴‘3) · (𝐵‘2)))
2017, 19oveq12d 7458 . . . 4 (𝑣 = 𝐵 → (((𝐴‘2) · (𝑣‘3)) − ((𝐴‘3) · (𝑣‘2))) = (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))))
21 fveq1 6904 . . . . . . 7 (𝑣 = 𝐵 → (𝑣‘1) = (𝐵‘1))
2221oveq2d 7456 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘3) · (𝑣‘1)) = ((𝐴‘3) · (𝐵‘1)))
2316oveq2d 7456 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘1) · (𝑣‘3)) = ((𝐴‘1) · (𝐵‘3)))
2422, 23oveq12d 7458 . . . . 5 (𝑣 = 𝐵 → (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))) = (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))))
2518oveq2d 7456 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘1) · (𝑣‘2)) = ((𝐴‘1) · (𝐵‘2)))
2621oveq2d 7456 . . . . . 6 (𝑣 = 𝐵 → ((𝐴‘2) · (𝑣‘1)) = ((𝐴‘2) · (𝐵‘1)))
2725, 26oveq12d 7458 . . . . 5 (𝑣 = 𝐵 → (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1))) = (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1))))
2824, 27ifeq12d 4507 . . . 4 (𝑣 = 𝐵 → if(𝑘 = 2, (((𝐴‘3) · (𝑣‘1)) − ((𝐴‘1) · (𝑣‘3))), (((𝐴‘1) · (𝑣‘2)) − ((𝐴‘2) · (𝑣‘1)))) = if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))
2920, 28ifeq12d 4507 . . 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 5202 . 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 51229 . 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 7473 . . 3 (1...3) ∈ V
3332mptex 7249 . 2 (𝑘 ∈ (1...3) ↦ if(𝑘 = 1, (((𝐴‘2) · (𝐵‘3)) − ((𝐴‘3) · (𝐵‘2))), if(𝑘 = 2, (((𝐴‘3) · (𝐵‘1)) − ((𝐴‘1) · (𝐵‘3))), (((𝐴‘1) · (𝐵‘2)) − ((𝐴‘2) · (𝐵‘1)))))) ∈ V
3415, 30, 31, 33ovmpo 7601 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 2147  ifcif 4485   ↦ cmpt 5189  ‘cfv 6555  (class class class)co 7440   ↑m cmap 8872  ℝcr 11223  1c1 11225   · cmul 11229   − cmin 11565  2c2 12421  3c3 12422  ...cfz 13663  ⊠ccrossp 51228
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5235  ax-sep 5252  ax-nul 5263  ax-pr 5395
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-iota 6509  df-fun 6557  df-fn 6558  df-f 6559  df-f1 6560  df-fo 6561  df-f1o 6562  df-fv 6563  df-ov 7443  df-oprab 7444  df-mpo 7445  df-crossp 51229
This theorem is used by:  crosspcld  51237  crosspv1d  51238  crosspv2d  51239  crosspv3d  51240
  Copyright terms: Public domain W3C validator