0% found this document useful (0 votes)
151 views21 pages

Canonical Form

Detailed note on Canonical form of matrices
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
151 views21 pages

Canonical Form

Detailed note on Canonical form of matrices
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

Canonical form

Page issues

Algorithmic anagram test using multisets as canonical


forms: The strings "madam curie" and "radium came"
are given as C arrays. Each one is converted into a
canonical form by sorting. Since both sorted strings
literally agree, the original strings were anagrams of
each other.
In mathematics and computer science, a
canonical, normal, or standard form of a
mathematical object is a standard way of
presenting that object as a mathematical
expression. The distinction between
"canonical" and "normal" forms varies by
subfield. In most fields, a canonical form
specifies a unique representation for every
object, while a normal form simply
specifies its form, without the requirement
of uniqueness.

The canonical form of a positive integer in


decimal representation is a finite
sequence of digits that does not begin
with zero.
More generally, for a class of objects on
which an equivalence relation is defined, a
canonical form consists in the choice of a
specific object in each class. For example,
Jordan normal form is a canonical form
for matrix similarity, and the row echelon
form is a canonical form, when one
considers as equivalent a matrix and its
left product by an invertible matrix.

In computer science, and more specifically


in computer algebra, when representing
mathematical objects in a computer, there
are usually many different ways to
represent the same object. In this context,
a canonical form is a representation such
that every object has a unique
representation. Thus, the equality of two
objects can easily be tested by testing the
equality of their canonical forms. However
canonical forms frequently depend on
arbitrary choices (like ordering the
variables), and this introduces difficulties
for testing the equality of two objects
resulting on independent computations.
Therefore, in computer algebra, normal
form is a weaker notion: A normal form is
a representation such that zero is uniquely
represented. This allows testing for
equality by putting the difference of two
objects in normal form.
Canonical form can also mean a
differential form that is defined in a natural
(canonical) way.

In computer science, data that has more


than one possible representation can often
be canonicalized into a completely unique
representation called its canonical form.
Putting something into canonical form is
canonicalization.[1]

Definition
Suppose we have some set S of objects,
with an equivalence relation R. A canonical
form is given by designating some objects
of S to be "in canonical form", such that
every object under consideration is
equivalent to exactly one object in
canonical form. In other words, the
canonical forms in S represent the
equivalence classes, once and only once.
To test whether two objects are equivalent,
it then suffices to test their canonical
forms for equality. A canonical form thus
provides a classification theorem and
more, in that it not just classifies every
class, but gives a distinguished
(canonical) representative.

Formally, a canonicalization with respect


to an equivalence relation R on a set S is a
mapping c:S→S such that for all s, s1, s2 ∈
S:

1. c(s) = c(c(s)) (idempotence),


2. s1 R s2 if and only if c(s1) = c(s2)
(decisiveness), and
3. s R c(s) (representativeness).

Property 3 is redundant, it follows by


applying 2 to 1.

In practical terms, one wants to be able to


recognize the canonical forms. There is
also a practical, algorithmic question to
consider: how to pass from a given object
s in S to its canonical form s*? Canonical
forms are generally used to make
operating with equivalence classes more
effective. For example, in modular
arithmetic, the canonical form for a
residue class is usually taken as the least
non-negative integer in it. Operations on
classes are carried out by combining these
representatives and then reducing the
result to its least non-negative residue.
The uniqueness requirement is sometimes
relaxed, allowing the forms to be unique
up to some finer equivalence relation, like
allowing reordering of terms (if there is no
natural ordering on terms).

A canonical form may simply be a


convention, or a deep theorem.
For example, polynomials are
conventionally written with the terms in
descending powers: it is more usual to
write x2 + x + 30 than x + 30 + x2, although
the two forms define the same polynomial.
By contrast, the existence of Jordan
canonical form for a matrix is a deep
theorem.

Examples
Note: in this section, "up to" some
equivalence relation E means that the
canonical form is not unique in general,
but that if one object has two different
canonical forms, they are E-equivalent.
Linear algebra
A is equivalent to
Objects Normal form Notes
B if:

Normal
for
matrices over Diagonal matrices (up
some unitary This is the Spectral theorem
the complex to reordering)
matrix U
numbers

Matrices over for Diagonal matrices with


the complex some unitary real positive entries (in Singular value decomposition
numbers matrices U and V descending order)

Matrices over for Jordan normal form


an algebraically some invertible (up to reordering of
closed field matrix P blocks)

Matrices over for Weyr canonical form


an algebraically some invertible (up to reordering of
closed field matrix P blocks)

for
Matrices over a
some invertible Frobenius normal form
field
matrix P

Matrices over a for The equivalence is the same as


principal ideal some invertible Smith normal form allowing invertible elementary row
domain Matrices P and Q and column transformations

Finite-
A and B are
dimensional , n a non-negative
isomorphic as
vector spaces integer
vector spaces
over a field K

Classical logic
Negation normal form
Conjunctive normal form
Disjunctive normal form
Algebraic normal form
Prenex normal form
Skolem normal form
Blake canonical form, also known as the
complete sum of prime implicants, the
complete sum, or the disjunctive prime
form

Functional analysis
Objects A is equivalent to B if: Normal form

If A and B are both separable Hilbert sequence spaces (up to


Hilbert
spaces of infinite dimension, then A exchanging the index set I with another
spaces
and B are isometrically isomorphic. index set of the same cardinality)

The algebra of continuous


Commutative
A and B are isomorphic as - functions on a compact Hausdorff space,
-algebras
algebras up to homeomorphism of the base
with unit
space.

Number theory

canonical representation of a positive


integer
canonical form of a continued fraction

Algebra
A is equivalent to B
Objects Normal form
if:

A and B are Primary decomposition (up to


Finitely generated R-modules
isomorphic as R- reordering) or invariant factor
with R a principal ideal domain
modules decomposition

Geometry
In analytic geometry:

The equation of a line: Ax + By = C, with


A2 + B2 = 1 and C ≥ 0
The equation of a circle:

By contrast, there are alternative forms for


writing equations. For example, the
equation of a line may be written as a
linear equation in point-slope and slope-
intercept form.

Convex polyhedra can be put into


canonical form such that:

All faces are flat,


All edges are tangent to the unit sphere,
and
The centroid of the polyhedron is at the
origin.[2]

Mathematical notation

Standard form is used by many


mathematicians and scientists to write
extremely large numbers in a more
concise and understandable way.

Set theory

Cantor normal form of an ordinal


number

Game theory
Normal form game

Proof theory

Normal form (natural deduction)

Rewriting systems

In an abstract rewriting system a normal


form is an irreducible object.

Lambda calculus

A lambda term is in beta normal form if


no beta reduction is possible; lambda
calculus is a particular case of an
abstract rewriting system. In the
untyped lambda calculus, e.g., the term
doesn't have a
normal form. In the typed lambda
calculus, every well-formed term can be
rewritten to its normal form.

Dynamical systems

Normal form (dynamical systems)

Graph theory

In graph theory, a branch of mathematics,


graph canonization is the problem finding
a canonical form of a given graph G. A
canonical form is a labeled graph
Canon(G) that is isomorphic to G, such
that every graph that is isomorphic to G
has the same canonical form as G. Thus,
from a solution to the graph canonization
problem, one could also solve the problem
of graph isomorphism: to test whether two
graphs G and H are isomorphic, compute
their canonical forms Canon(G) and
Canon(H), and test whether these two
canonical forms are identical.

Differential forms

Canonical differential forms include the


canonical one-form and canonical
symplectic form, important in the study of
Hamiltonian mechanics and symplectic
manifolds.
Computing

In computing, the reduction of data to any


kind of canonical form is commonly called
data normalization.

For instance, database normalization is


the process of organizing the fields and
tables of a relational database to minimize
redundancy and dependency. In the field of
software security, a common vulnerability
is unchecked malicious input. The
mitigation for this problem is proper input
validation. Before input validation may be
performed, the input must be normalized,
i.e., eliminating encoding (for instance
HTML encoding) and reducing the input
data to a single common character set.

Other forms of data, typically associated


with signal processing (including audio
and imaging) or machine learning, can be
normalized in order to provide a limited
range of values.

See also
Canonicalization
Canonical basis
Canonical class
Normalization (disambiguation)
Standardization
Notes
1. The term 'canonization' is sometimes
incorrectly used for this.
2. Ziegler, Günter M. (1995), Lectures on
Polytopes, Graduate Texts in Mathematics,
152, Springer-Verlag, pp. 117–118, ISBN 0-
387-94365-X

References
Shilov, Georgi E. (1977), Silverman,
Richard A., ed., Linear Algebra, Dover,
ISBN 0-486-63518-X.
Hansen, Vagn Lundsgaard (2006),
Functional Analysis: Entering Hilbert
Space, World Scientific Publishing,
ISBN 981-256-563-9.

Retrieved from
"https://en.wikipedia.org/w/index.php?
title=Canonical_form&oldid=829674107"

Last edited 1 month ago by Apocheir

Content is available under CC BY-SA 3.0 unless


otherwise noted.

You might also like