HomeCalculatorsMathVectorsCross Product Calculator
Math calculator

Cross Product Calculator

Vector product u × v in R³. 2-D uses uz = vz = 0. Same engine as Vector. Not a matrix. Not CAS. Runs locally.

Instant result
Result
—

Enter values to calculate.

Inputs—
Mode—
Formula—
Trust summary CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes
Input interpretation
Enter values to calculate.
Result
—
Verified scope
all published modes
Assurance
Core
Declared partition coverage
PASS · 10/10 declared partitions (magnitude, normalize, add, sub, dot, cross, angle, projection, triple, invalid-domain) · Matrix
Known limitations
  • Core CVP does not include live graph, viewport, or pointer interaction.
Model
The vector (cross) product of two Euclidean vectors in R³.
Scope
Euclidean R³
Verification
Engine tested · Specification checked · v1.6.1 · CVP VERIFIED · CVP protocol 1.0.0-proposed · Core assurance · all published modes· View Manifest · CVP overview · Specification
Versions
Calculation 1.6.1 · CVP protocol 1.0.0-proposed · Evidence 2026-09-29.cross-product-hardening-iface2
Verification revision
2026-09-29.cross-product-hardening-iface2 · 7/7 property · digest 3e840b22dc12
Legacy regression
11/11 tests · Production surface contract 5/5
Trust layers
Verification VERIFIED · Production CURRENT · Overall CVP state: VERIFIED under CVP 1.0.0-proposed
Reference
O1 model · O2 expected_values · O2 numerical_behavior
Interfaces
PASS · UI (SSR) / REST / MCP — ui-ssr is query-result HTML, not a live browser session. Error-path engine·REST·MCP 2/2 (status, code, calculation_version). SSR compared on URL-canonical requested calculations; empty query is idle (not an error) and JSON-typed object/array inputs are REST/MCP-only.
Supplemental domain review
Not performed
Named expert review
Not performed
CVP suite
10/10 golden · 4/4 CVP boundary · 9/9 invalid · 7/7 property · 6/6 cross-interface · 2/2 cross-calculator · 5/5 CVP contract · Manifest
Cross-product property checks
i × j = k · Orthogonal to u · Orthogonal to v · Anti-commutativity · Self-cross = 0
Specification basis
  • ISO 80000-2:2019 Quantities and units — Mathematics
Specification basis
Evidence
3 legacy golden · 2 legacy boundary · legacy regression suite · 10/10 oracle-backed golden · 9/9 invalid · Artifact integrity PASS
This calculator CURRENT · Public schema 1.6.1 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓
Semantic contract
PASS
Full verification

Manifest identity, reference classes, interfaces, suite, and production records.

Formulas

Core equations used by this calculator.

Cross productu × v = (uy vz − uz vy, uz vx − ux vz, ux vy − uy vx)
2-D special case(ux, uy, 0) × (vx, vy, 0) = (0, 0, ux vy − uy vx)
iSame engine as /vector. Dot product is /dot-product. The scalar triple product u·(v×w) stays on the hub.

How to use

1

Enter u and v

uz and vz default to 0. i × j = (0, 0, 1).

2

Read the vector

The result is perpendicular to both inputs. Its magnitude is the parallelogram area; half of that is the triangle area. Parallel vectors give the zero vector.

Example calculations

Common configurations with formula and result.

ϟ

i × j

u = (1, 0, 0), v = (0, 1, 0)

k
(0, 0, 1)
ϟ

2-D

u = (3, 4, 0), v = (1, 0, 0)

k(0−4)
(0, 0, −4)
ϟ

Parallel vectors

u = (1, 2, 3), v = (2, 4, 6); parallel vectors produce the zero vector

u × (2u)
(0, 0, 0)
ϟ

Three-dimensional vectors

u = (1, 2, 3), v = (4, 5, 6); all three components are calculated

(2·6−3·5, 3·4−1·6, 1·5−2·4)
(−3, 6, −3)

Cross Product calculator specification

Version 1.6.1 · Engine tested

Calculation status

Review policy · Evidence

Definition
u × v = (uy vz − uz vy, uz vx − ux vz, ux vy − uy vx). This page is mode=cross on math.vector. i × j = k. 2-D inputs use uz = vz = 0 and return a k-component. Not a second engine. Not CAS.
What it calculates
The vector (cross) product of two Euclidean vectors in R³.
Inputs
  • ux
  • uy
  • uz?
  • vx
  • vy
  • vz?
Outputs
  • cx
  • cy
  • cz
Formula
u × v = (uy vz − uz vy, uz vx − ux vz, ux vy − uy vx)
Assumptions
  • Euclidean R³
  • uz/vz default to 0
  • Right-handed
  • Not a matrix
  • Not CAS
Units
  • Output units are the product of the input vector units [u][v]; two length vectors give length².
Boundary conditions
  • missing ux, uy, vx, or vy → MISSING_REQUIRED_INPUT
  • non-finite input (NaN or Infinity) → INVALID_NUMBER
  • finite inputs whose cross-product components overflow → NON_FINITE_RESULT
  • Finite scientific notation is accepted; subnormal and signed-zero inputs follow IEEE-754 binary64, and output components below 1e-15 round to zero.
  • unknown mode → INVALID_MODE
Example
i × j → (0, 0, 1)
Validation cases

2 published on this page · 11/11 tests · Production surface contract 5/5 · View evidence

  • ux=1 uy=0 uz=0 vx=0 vy=1 vz=0 → cx=0 cy=0 cz=1
  • ux=3 uy=4 vx=1 vy=0 → cz=-4
Specification basis
  • ISO 80000-2:2019 Quantities and units — Mathematics
Calculation version
1.6.1

Frequently asked questions

Key distinctions behind the calculation.

Is this a second vector engine?

No. It is mode=cross on math.vector, the same engine as /calc/math/vector.

Does 2-D cross return a scalar?

The engine always returns a 3-vector. In the plane uz = vz = 0, so only the z-component is nonzero.

Where does this run?

Locally in the browser by default. REST and MCP call the same vector engine.

What does the cross-product magnitude mean?

|u × v| is the area of the parallelogram spanned by u and v. The corresponding triangle area is |u × v| / 2. The direction follows the right-hand rule.