Engineering/Mathematics/Preliminaries
Linear Algebra Notation Reference
Notation is the interface through which every result in linear algebra is stated, and most difficulty in reading a theorem is difficulty in decoding its symbols. This page fixes one consistent set of conventions and explains what each symbol denotes, what type of object it produces, and where competing conventions differ.
- Foundation level
- Stream: reference
- Reading time 14 min
- Ref KVS-ENG-MATH-0121
- Taxonomy
- Engineering / Mathematics
- Prerequisite
- None; intended to be read alongside any other topic
- Governing standard
- ISO 80000-2 for typography and symbols
- Index base
- 1-based throughout, as in mathematical writing
- Scalars
- Complex, , unless stated otherwise
- Biggest hazard
- , and each carry two meanings in the wider literature
Overview
Every symbol in linear algebra denotes an object of a definite type, and almost all confusion in reading the subject comes from mistaking one type for another. The expression looks substantial but denotes a single scalar. The expression takes a finite set and produces an infinite one. The expression turns an element of an abstract vector space into a column of numbers. Reading fluently means recognising the type of every subexpression before attempting to interpret the whole.
The conventions on this page are internally consistent and follow ISO 80000-2 where that standard speaks: italic for scalar variables and for matrix and vector names, upright for operators such as , and , square brackets for matrix layouts, and a distinguishing accent for vectors. Matrices take upper-case Latin letters from the start of the alphabet, vectors take lower-case letters from the end, and scalars take Greek letters or letters from the middle.
Three families of symbols carry most of the content. The first describes matrices and their parts: entries, columns, size, transpose, conjugate, adjoint and inverse. The second describes the subspaces attached to a matrix — null space, column space, row space and left null space — together with the dimension counts rank and nullity. The third describes linear transformations and their matrix representations, including the vector representation map and the change-of-basis matrix.
Notation is also where competing conventions cause real defects. The star may mean adjoint or plain transpose depending on the source; the tilde may mean row equivalence or similarity; angle brackets may mean span or inner product; and vertical bars serve for absolute value, modulus, determinant and set-builder separation. Mathematical writing resolves these by context, but code and data interchange cannot, which is why an explicit convention statement belongs at the front of any technical document that uses them.
Definition
Matrix and Matrix Entry
M / MEAn matrix is a rectangular layout of scalars with rows and columns, written with square brackets and named by an upper-case italic letter. The scalar in row and column is written , or where no ambiguity arises. Rows are numbered from the top and columns from the left, both starting at . The set of all matrices over is written .
is a single scalar, not a matrix. The bracket notation is preferred in proofs because it composes: and are unambiguous where alone would need explanation.
Column Vector and Vector Entry
CV / VEA column vector of size is an ordered vertical list of scalars, written , , and so on. Its -th entry is . The zero vector of a space is . The set of all column vectors of size with complex entries is , and with real entries .
A column vector of size is the same object as an matrix, and the two notations are used interchangeably where that is convenient. Row vectors are written as transposes, , rather than introduced as a separate type.
Linear System and Augmented Matrix
LS / AMFor a coefficient matrix and a vector of constants , the system of equations is abbreviated and its augmented matrix is written , with the vertical rule marking the boundary between coefficients and constants. The solution set is .
The vertical rule is a reading aid only; it has no algebraic meaning and row operations pass straight through it. It is retained because the presence or absence of a pivot to its right is the consistency test.
Reduced Row-Echelon Form Analysis
RREFAFor a matrix already in reduced row-echelon form, denotes the number of non-zero rows, the ordered indices of the pivot columns, and the ordered indices of the remaining columns. For an augmented matrix of a system in unknowns, has members and includes column exactly when the system is consistent.
The subscripted entries of are themselves column indices, so means the column containing the second leading one, not the second column.
Concepts
Typography and object type
Type is signalled by shape before it is signalled by letter.
- Scalars — italic lower case or Greek: , , , , .
- Column vectors — italic lower case with an arrow accent: , , ; zero vector .
- Matrices — italic upper case: , , ; identity ; zero matrix .
- Sets and spaces — blackboard bold for number systems, , , , ; script for subspaces attached to a matrix, , , , .
- Operators — upright: , , , , , .
- Transformations — italic upper case with an explicit signature: .
Indexing, parts and structural operations on a matrix
- — the scalar in row , column .
- — the -th column of , itself a vector in .
- — the transpose, with ; size .
- — the entrywise conjugate; same size, no rearrangement.
- — the adjoint, conjugate of the transpose: .
- — the inverse, defined only for square nonsingular .
- , — the identity of size and the zero matrix.
- , — determinant and trace, both scalars, both square-only.
Systems, row operations and solution structure
- — the system with coefficient matrix and constants .
- — its augmented matrix.
- — the solution set.
- — swap rows and .
- — multiply row by the non-zero scalar .
- — add times row to row , replacing row .
- — and are row-equivalent.
- , , — rank, pivot column indices, non-pivot column indices.
The four subspaces and their dimension counts
For an matrix :
- — the null space, a subspace of .
- — the column space, a subspace of .
- — the row space, a subspace of .
- — the left null space, a subspace of .
- , .
Spans, inner products and norms
- , also written — the set of all linear combinations of the members of .
- — the inner product, conjugating the first argument.
- — the norm, a non-negative real number.
- — orthogonality, meaning .
- , — conjugate and modulus of a scalar.
Transformations, representations and eigenstructure
- — a linear transformation with domain and codomain .
- , — kernel and range of , subspaces of and respectively.
- — the coordinate column of relative to the basis .
- — the matrix representation of relative to basis of the domain and of the codomain.
- — the change-of-basis matrix from to .
- — the eigenspace of for ; and its algebraic and geometric multiplicities.
- — the characteristic polynomial.
Decoding an unfamiliar expression
Equations
Matrix layout and entry reference
EQ-NOT-01Row index first, column index second, both starting at . The entry notation denotes a scalar, whatever the visual weight of the brackets suggests.
Transpose, conjugate and adjoint
EQ-NOT-02Three distinct operations that coincide in pairs for real or for symmetric data, which is precisely why they must be distinguished in the general case.
Augmented matrix of a linear system
EQ-NOT-03The rule is a reading aid with no algebraic content. Row operations act across it, and the consistency test asks whether column is a pivot column.
The four subspaces and their ambient spaces
EQ-NOT-04Two subspaces attached to an matrix live in the domain space and two in the codomain space. Mixing them is the most frequent notational error in the subject.
Dimension bookkeeping
EQ-NOT-05Two independent counting identities, one in each ambient space. Both are useful as arithmetic checks on any computed set of subspace bases.
Span, inner product and norm
EQ-NOT-06One argument in angle brackets denotes a span; two denote an inner product. This library writes the operator name for the first to avoid relying on that distinction.
Representation notation
EQ-NOT-07The superscript on names the transformation and is not a power. The subscripts are ordered domain basis first, codomain basis second.
Eigenstructure notation
EQ-NOT-08Eigenspace, algebraic multiplicity and geometric multiplicity all carry the matrix as a subscript, since all three depend on it.
Variable Definitions
| Symbol | Name | Meaning | Domain / type |
|---|---|---|---|
| Matrix | An rectangular layout of scalars | element of M_mn | |
| Matrix entry | The single scalar in row and column | complex scalar | |
| Matrix column | The -th column of , a vector of size | vector in C^m | |
| Column vector | An ordered vertical list of scalars; entry is | vector in C^m | |
| Matrix space | The set of all matrices over | vector space of dimension mn | |
| Null space | Solutions of the homogeneous system, a subspace of | subspace of C^n | |
| Column space | Span of the columns, a subspace of | subspace of C^m | |
| Vector representation | Isomorphism taking an abstract vector to its coordinate column relative to | isomorphism V to C^n | |
| Matrix representation | Matrix of relative to domain basis and codomain basis | m x n complex matrix |
Worked Numerical Example
Problem statement
Decode the statement let with ; then and , and instantiate every symbol on the matrix whose rows are , and .
Read the type declaration
The membership fixes three rows and four columns, so and , with entries drawn from . Every subsequent size claim in the statement follows from these two numbers alone.
Reduce and extract the analysis symbols
Row-reducing gives two non-zero rows. Reading the reduced form, , the pivot columns are and the remaining columns are . These three symbols drive every dimension count that follows.
Instantiate , a subspace of
Solutions of the homogeneous system have four entries, one per unknown, so the null space sits in . Its dimension is , matching the two free columns in .
Instantiate , a subspace of
The columns of each have three entries, so the column space sits in . A basis is given by the original columns indexed by , that is columns and of — not the columns of the reduced form.
Instantiate , a subspace of
The row space is , and each row of has four entries, so it sits in alongside the null space. The non-zero rows of the reduced form, written as columns, are a basis.
Instantiate , a subspace of
The left null space is , whose vectors have three entries. Its dimension is . Solving gives the single basis vector below; substituting it back into every column of returns zero.
Check both dimension identities
The two counting relations act in different ambient spaces and provide independent checks. In : rank plus nullity must equal . In : the column space and left null space dimensions must sum to . Both hold, so the four bases are mutually consistent.
Resolve the notation that could have been misread
Three symbols in the original statement carry real information that inattentive reading loses. The subscript in is size, not an entry index. The script is the row space, whereas with a transformation argument is a range. And is , so its ambient space is even though the letter suggests nothing about size.
Every symbol in the statement resolved to a concrete object: two subspaces of of dimension two each, one subspace of of dimension two, and one of dimension one. The two dimension identities held exactly, which is the cheapest available confirmation that the reduction and all four bases are correct. Notation carried the entire specification — sizes, ambient spaces and dimension counts — before any arithmetic was performed.
Applications & Industry Use
Unambiguous statement of algorithms
Standards that specify numerical procedures must express matrix operations so that two independent implementations agree bit for bit. That requires stating index base, storage order, whether transposes are conjugated, and whether a norm is Euclidean or induced. Every one of these is a notational decision, and omitting it produces conforming implementations that disagree.
Mapping mathematical notation onto an API
Library interfaces encode notation in their names and argument order: a transpose flag, a conjugation flag, leading dimensions, and whether the upper or lower triangle is referenced. Reading such an interface is exactly the decoding exercise on this page, and most integration defects are notation mismatches rather than algorithmic errors.
Semantic mathematics in published documents
Rendering an expression as an image loses its content. Encoding it as structured markup preserves the distinction between a subscript that is an index and one that is a size, between an exponent and a transformation label, and allows assistive technology to announce the structure. Notation that is semantically encoded is also searchable and machine-translatable.
Reconciling the row-vector convention
Much of the statistical and machine-learning literature stores observations as rows and therefore writes where classical linear algebra writes . Both are correct within their own conventions, but formulas transplanted between them acquire spurious transposes. Translating a result requires an explicit convention statement, not an intuitive adjustment.
Diagnosing errors by symbol type
A large fraction of errors in written work are type errors rather than arithmetic ones: adding a scalar to a matrix, comparing a subspace with a vector, or reporting a column space inside the wrong ambient space. Marking by type is faster than marking by value and identifies the underlying misunderstanding directly.
Interchange of matrices between tools
Transferring a system matrix between a finite element package, a solver and a post-processor requires agreement on index base, storage order, symmetric storage convention and sign convention. Interchange formats encode these explicitly for exactly this reason, and a mismatch typically appears as a transposed or reflected result rather than as an outright failure.
Design Considerations
Declare the convention once, at the front
Any document that mixes transposes and adjoints, spans and inner products, or row equivalence and similarity should state its conventions before the first theorem. The cost is a short paragraph; the alternative is a reader who must infer the convention from context and who will occasionally infer wrongly at the one place it matters.
Distinguish the star, the tilde and the bars
means the adjoint here and in most current writing, but means the plain transpose in some older texts; means row equivalence for general matrices and similarity for square ones; vertical bars serve as modulus, absolute value, determinant, cardinality and set-builder separator. Prefer and where both are needed, name the relation the tilde denotes, and use rather than bars around a matrix in running prose.
Keep mathematical and programming index bases separate
Mathematical writing indexes from ; C, Python and most modern languages index from . Fortran, MATLAB and Julia index from . Translate at a single, clearly marked boundary rather than converting inline, and never mix bases within one expression. Off-by-one defects introduced this way survive testing because they usually produce plausible results.
Choose one storage order and record it
Row-major and column-major layouts describe the same matrix but interact differently with transposition, with leading-dimension arguments and with cache behaviour. Reference numerical libraries are column-major by origin; most general-purpose languages are row-major. Record the choice in every interface contract, because a silent mismatch delivers the transpose.
Prefer operator names to overloaded brackets
Writing rather than , and rather than bars, costs a few characters and removes a class of ambiguity entirely. This matters most in machine-processed text, where context is unavailable and an overloaded symbol cannot be disambiguated at all.
Encode mathematics semantically, not pictorially
Structured markup preserves the difference between an index, a size and an exponent, keeps expressions searchable, and allows them to be read aloud correctly. An image of an equation is opaque to every one of those uses and degrades under magnification. Where an expression carries specification content, semantic encoding is a requirement rather than a refinement.
Standards & Codes
Notation, interchange and numerical standards that govern how this material is written down, stored and computed in production systems.
| Reference | Title | Relevance to this topic |
|---|---|---|
ISO 80000-2 | Quantities and units — Part 2: Mathematics | The governing reference for this page: sets the italic and upright conventions, the symbols for number systems and logical connectives, and the presentation of matrices, vectors and operators. |
ISO/IEC 40314 | Mathematical Markup Language (MathML) Version 3.0 | Provides the semantic encoding in which an index, a size subscript and an exponent are distinguishable elements rather than similar-looking glyphs, which is what makes rendered mathematics machine-readable. |
ISO/IEC 10646 / Unicode | Universal Coded Character Set | Assigns code points to the blackboard-bold and script letters used for , and their relatives, so that notation survives plain-text interchange without falling back to ASCII transliteration. |
LAPACK naming convention | Linear Algebra PACKage routine naming scheme | Encodes notation directly into identifiers: a leading letter for the scalar type, two for the matrix structure and three for the operation, plus transpose and conjugate-transpose flags at every call site. |
W3C WCAG 2.1 AA | Web Content Accessibility Guidelines | Requires that mathematical content be available to assistive technology, which rules out image-only equations and makes the semantic distinctions on this page a conformance matter rather than a stylistic one. |
Material Selection
For a mathematical topic, "material" is the numeric representation: the scalar field, storage format and precision the computation is built from.
| Representation | Select when | Trade-off |
|---|---|---|
| LaTeX source | Authoring, version control and peer review of mathematical documents. | Compact, universally understood by authors and diff-friendly, but it encodes appearance rather than meaning, so a subscript that is an index and one that is a size look identical to a machine. |
| Presentation MathML | Web publication where the expression must render, scale and be read aloud correctly. | Preserves structure, is searchable and satisfies accessibility requirements, at the cost of verbosity and a need for generation tooling. |
| Content MathML or OpenMath | Machine exchange of mathematics between computer algebra systems, where the meaning and not the appearance must survive. | Unambiguous semantics, but far more verbose still and supported by a much smaller set of tools. |
| Unicode plain text | Code comments, issue trackers, short messages and interface documentation. | Renders acceptably almost everywhere with no tooling, but has no structure at all, cannot express a matrix layout, and depends on font coverage for script and blackboard-bold letters. |
| ASCII transliteration | Legacy interfaces, terminal output and constrained embedded logging. | Maximum portability, but ambiguity is severe: a caret must serve for both transpose and exponent, and conjugation usually has no representation at all. |
| Rendered image | Never for specification content; acceptable only for decorative reproduction of historical material. | Guaranteed visual fidelity, at the price of being unsearchable, unreadable by assistive technology, and illegible under magnification or in high-contrast modes. |
Manufacturing Notes
Implementation notes — how the result is actually produced by hand, by algorithm and by library, including cost and numerical behaviour.
Translating notation into code
Three decisions must be made explicitly at the boundary between a formula and its implementation: index base, storage order, and whether a transpose is conjugated. Fixing all three at a single translation layer, and asserting them in a test, prevents the class of defect where a result is transposed or reflected but otherwise plausible. Naming variables after the mathematical symbols they carry — and documenting the mapping — makes review far faster.
The LAPACK naming scheme as encoded notation
A routine name such as dgesv reads as double precision, general matrix, simple driver for a linear system; zheev reads as complex double, Hermitian, eigenvalue computation. Transpose and conjugate-transpose behaviour is selected by a character argument at each call. The scheme is worth learning as a compact notation in its own right, because it makes the structural assumptions of a call visible at the call site.
Row-major and column-major in practice
A column-major library reading a row-major buffer sees the transpose. Because most matrix operations have a well-defined transposed counterpart, the resulting program usually runs and produces wrong answers rather than failing. The reliable defence is a non-symmetric, non-square test case whose expected output is known: symmetric or square test data cannot detect the mismatch.
Checking an expression by dimensional analysis
Before evaluating an unfamiliar expression, propagate sizes through it symbolically. A product requires inner dimensions to match; an addition requires both operands to have the same size; a subspace claim requires the ambient dimension to be consistent. Most malformed expressions are detected by this alone, in seconds and without any arithmetic.
Rendering pipeline considerations
Expressions written once in a source notation and converted mechanically to the display format remain consistent across a document set, whereas hand-formatted mathematics drifts. Where conversion is mechanical, the source becomes the single point of truth for notation, and a convention change can be applied across a whole library by editing the conversion rules rather than every page.
Failure Modes & Common Mistakes
| Failure mode / mistake | Impact | Root cause | Prevention & detection |
|---|---|---|---|
| Reading as a matrix | medium | The bracket notation looks like a matrix layout, so the whole expression is treated as an array rather than a single entry. | Check the type: two subscripts on a bracketed matrix name always denote one scalar. Where a submatrix is meant, a different notation must be introduced explicitly. |
| Using the transpose where the adjoint is required | high | Writing for complex data, or reading a source in which denotes the plain transpose. | State which operation is intended at first use. Test with genuinely complex entries; real test data cannot distinguish the two. |
| Placing a subspace in the wrong ambient space | high | Assuming all four fundamental subspaces live in the same space, so a column space vector is compared with a null space vector. | Record the ambient dimension alongside every subspace. For an matrix, and live in , and in . |
| Reusing a letter with two meanings in one document | medium | Letting denote both the rank and a row index, or both a column count and a nullity. | Maintain a symbol table for any document longer than a page and check it before introducing a new letter. |
| Confusing span brackets with inner product brackets | medium | Angle brackets serve both purposes and are distinguished only by the number of arguments. | Write for the span. Where angle brackets must be used for a span, ensure the argument is visibly a set. |
| Silent index-base conversion | high | Mixing 1-based mathematical indices with 0-based programming indices inside a single expression or loop. | Convert at one clearly marked boundary and assert the base in a unit test. Off-by-one errors of this kind produce plausible output and survive casual testing. |
| Storage-order mismatch across an interface | high | Passing a row-major buffer to a column-major routine, or the reverse, so the routine operates on the transpose. | State the order in the interface contract and validate with a non-square, non-symmetric test case whose expected result is known independently. |
| Reading a representation superscript as an exponent | medium | Interpreting the in as a transpose marker or a power rather than as the name of the transformation. | Note that the subscript pair identifies two bases, which no exponent would require. Where confusion is likely, write the transformation name in words at first use. |
| Encoding mathematics as an image | medium | Pasting a rendered equation into a specification or a web page rather than encoding it. | Use semantic markup. An image cannot be searched, read aloud, magnified cleanly or checked mechanically, and it silently discards every distinction this page depends on. |
FAQs
Why write rather than the simpler ?
Because it composes. Expressions such as , and are immediately meaningful, whereas the plain subscript form requires a fresh letter for each derived matrix. In proofs that manipulate several matrices at once the bracket notation removes an entire layer of naming overhead.
What is the difference between , and ?
The transpose reflects entries across the diagonal without touching their values. The conjugate conjugates every entry without moving it. The adjoint does both. For real matrices the transpose and adjoint coincide, which is why the distinction is easy to lose and why it must be checked deliberately once entries are complex.
Why do the four fundamental subspaces not all live in the same space?
Because two of them are built from columns and two from rows. For an matrix, columns have entries and rows have , so the column space and left null space sit in while the null space and row space sit in . The notation does not announce this, so the ambient dimension has to be tracked separately.
Does the vertical rule in an augmented matrix mean anything algebraically?
No. It marks where the coefficients end and the constants begin, purely as a reading aid, and row operations act straight through it. Its value is that it makes the consistency test visible: the system is inconsistent exactly when the column to the right of the rule contains a leading one.
Is a span or an inner product?
It depends on the argument count. One argument, and especially a set-valued one, means the span; two vector arguments mean the inner product. Because this relies on context that a machine cannot recover, this library writes for the span and reserves angle brackets for inner products.
How should mathematical notation be carried into source code?
Fix the index base, the storage order and the conjugation convention at a single translation boundary, and assert all three in tests. Name variables after the symbols they carry and document the mapping. Notation defects introduced by inconsistent translation typically produce transposed or shifted results that look plausible and pass symmetric test cases.
Why does machine-learning literature write formulas with transposes in different places?
Because it usually stores observations as rows of a data matrix, whereas classical linear algebra treats vectors as columns. Both conventions are internally consistent, but a formula moved between them acquires or loses a transpose. Translation requires stating the convention explicitly rather than adjusting by intuition.
References
- Beezer, R. A. A First Course in Linear Algebra, Version 0.70. University of Puget Sound, 2006. Notation entries M, ME, V, VE, ZV, VSCV, RREFA, LS, AM, NSM, SSV, IP, NV, TM, MVP, MI, CSM, RSM, LNS, D, NOM, ROM, DM, LT, KLT, RLT, ROLT, NOLT and CCN. Licensed under the GNU Free Documentation License v1.2.
- ISO 80000-2:2019, Quantities and units — Part 2: Mathematics. International Organization for Standardization.
- W3C. Mathematical Markup Language (MathML) Version 3.0, 2nd edition (ISO/IEC 40314).
- Anderson, E. et al. LAPACK Users' Guide, 3rd edition. Society for Industrial and Applied Mathematics, 1999. Naming scheme and argument conventions.
- The Unicode Consortium. The Unicode Standard. Mathematical Alphanumeric Symbols and Mathematical Operators blocks.
AI Suggested Questions
- Take a theorem statement from a machine-learning paper written in the row-vector convention and rewrite it in column-vector notation.
- Show me an expression that is syntactically well formed but type-incorrect, and identify exactly which subexpression fails.
- How does a column-major library interpret a row-major buffer, and what test case reliably detects the mismatch?
- Explain what each character of the LAPACK routine name zhegvd encodes, and what assumptions it makes about its arguments.
- Write the four fundamental subspaces of a 4-by-6 matrix with their ambient spaces and dimensions in terms of the rank.
- Compare how the same matrix expression is encoded in LaTeX, presentation MathML and content MathML, and what each preserves.
Related Calculators
Paste an expression and receive a breakdown of each symbol, its object type, its size and the ambient space of any subspace it produces.
Matrix Dimension CheckerPropagate sizes through a chain of products, transposes and sums, and report the first incompatibility with its location.
Four Subspaces ExplorerEnter a matrix and obtain bases for , , and , each labelled with its ambient space and dimension.
