2-adic absolute value 2026-10-14
The 2-adic absolute value is the p-adic absolute value for the prime number . It is defined on the rational numbers by for and , and extends to their P-adic number completion . For a nonzero integer, count factors of two until the remaining factor is odd; for a rational number, subtract the denominator's count from the numerator's count.
The associated metric reverses a familiar comparison:
Although is eight units from on the ordinary number line, it agrees with modulo , whereas already disagrees modulo . The 2-adic absolute value measures that agreement. The value also shows why this Non-Archimedean absolute value must be distinguished from the ordinary absolute value .
Figure 1.
Ordinary absolute value and 2-adic absolute value give different distance patterns for the same sixteen integers
. Details.
In the left panel, differences farther from the diagonal grow in ordinary absolute value. In the right panel, nonzero even differences are closer than odd differences, and each further factor of two halves the 2-adic absolute value. The highlighted pairs have opposite distance rankings. The repeated pattern is the nested congruence class structure of an ultrametric space, visible without adding any new points.
Abelian group Created 2026-09-24 Updated 2026-10-14
An abelian group is a group whose group operation is commutative: for every . Thus rearranging a finite sequence of operations preserves the result. Associativity already permits changing parentheses; commutativity additionally permits exchanging the elements.
The additive integers, the additive real numbers, and every cyclic group are abelian groups. Additive notation is often convenient: the identity element is written , the inverse element of is , and . It does not force an element to be an ordinary number: in , an element is a pair of binary coordinates, added componentwise modulo two.
Commutativity is useful because an integer linear combination of chosen group elements depends only on their coefficients, rather than on the order in which the operations were performed. The Fundamental theorem of finitely generated abelian groups turns this simplicity into a classification by cyclic groups. However, commutativity does not imply that a single generator of a group suffices: the Klein four-group is the smallest counterexample, as the cyclic group of order four and Klein four-group demonstrate.
Abelian groups as integer modules Created 2026-10-14 Updated 2026-10-25
Every abelian group has exactly one unital module structure over the integers. For , define by adding to itself times, put , and put . The module axioms force this action, so no additional choice is involved. Moreover, every Abelian group homomorphism respects it and is a module homomorphism. See David McKinnon's Modules, the integer-scalar example.
For example, in the free module ,
In the cyclic group , the same repeated-addition rule gives and . The scalar is nonzero in the scalar ring , even though it kills the nonzero module element . Thus the scalar ring and the module must be kept distinct.
In the Heisenberg group over a commutative ring with , the subset is an Abelian subgroup of group order 16. Its product has central coordinate , symmetric in the two factors. Its inverse element is . The map is a surjective group homomorphism to the additive group of , with kernel of a group homomorphism . Thus is a normal subgroup and has four cosets in the 64-element group.
Unlike the odd-prime case, division by two is unavailable. In fact take and . Then , where the binomial coefficient is computed as an integer before reduction modulo four. Hence and has element order eight. The element has element order two and is not a power of : the powers with outer coordinates two have central coordinates one or three. Their generated subgroups intersect trivially, so the 16-element Abelian group is the direct product of groups .
Absolutely normal number Created 2026-10-05 Updated 2026-10-14
An absolutely normal number is a normal number in every integer base . This requires every finite word in every such positional notation to have its appropriate limiting digit block frequency. Knowing base-ten normality alone does not establish absolute normality; the base is part of the statement.
Borel's 1909 result says that absolute normality holds almost everywhere for Lebesgue measure: within the exceptions form a Lebesgue null set. In particular, the set of absolutely normal numbers has Lebesgue measure one there. This is a statement about the size of an exceptional set, not a test for a specified constant. [ref] [ref]
A modern route uses the Birkhoff ergodic theorem and ergodicity of integer multiplication on the circle. For each fixed base and digit interval, the time proportion equals its Lebesgue measure almost everywhere. The bases and finite words form countable sets, so a countable intersection of these measure-one sets still has Lebesgue measure one. For an absolutely normal number, the word therefore has frequency in base two, in base three, and in base ten. The same symbols represent different intervals in different bases.
Abstract syntax tree 2026-10-13
An abstract syntax tree is a rooted tree recording the meaningful syntactic pieces of a program and how they fit together. A program identifier such as x, a literal value such as 2, and a node representing addition have different roles. Their arrangement answers structural questions: which program expression supplies an operand, which name is a variable assignment target, and which construct encloses another. This makes an abstract syntax tree useful to a compiler, an interpreter, and the type system that checks a program.
The word "abstract" describes what is omitted. Lexical analysis first recognizes lexical tokens, such as x, =, 2, +, 3, *, 4. A concrete parse tree can retain grammar derivation structure, including punctuation and intermediate context-free grammar categories such as expression, term and factor. An abstract syntax tree usually keeps the operation and its operands without all those grammar scaffolds. Parentheses can determine its shape without surviving as separate nodes. A parser may construct the abstract syntax tree directly; it need not first allocate a concrete parse tree.
An abstract syntax tree records programming language syntax, but does not by itself supply all programming language semantics. In a+b, the names do not reveal their current values, and + might perform addition of integers or concatenate strings. The programming language rules, name bindings, and operand types determine the meaning. In Python, successfully calling ast.parse also does not guarantee that later compilation will accept the result: parsing return 42 succeeds, but compiling that statement outside a function fails. [ref]
An abstract syntax tree is not machine code. Its nodes describe language constructs. A compiler can check and transform this structure before translating it into executable instructions; an interpreter can evaluate an appropriate tree directly. The little evaluator below demonstrates this distinction without pretending to implement an entire programming language.
Abstract syntax tree precedence example Created 2026-10-13 Updated 2026-10-31
Consider Python programs x=2+3*4 and x=(2+3)*4. Operator precedence places multiplication inside the right operand of addition in the first abstract syntax tree. The parentheses instead place addition inside the left operand of multiplication in the second. Their right-hand sides evaluate to and . No rule that simply reads all operators left to right would recover both structures. [ref]
Figure 1.
Two abstract syntax trees for variable assignment: operator precedence gives x=2+3*4 the value , while parentheses give x=(2+3)*4 the value
. Details.
These are schematic views of Python trees: Module is omitted, and the Add/Mult and Store markers are written inside their owning nodes. In the actual schema, BinOp has left, op and right fields; Assign has a list of targets and a value. Name(id='x', ctx=Store()) marks the name as a variable assignment target. Reading x in a program expression instead uses Load. A variable assignment is a statement, not an equation asserting that two values are equal. [ref]
A restricted recursive evaluator can follow those fields. It accepts only integer literal values and binary addition, subtraction and multiplication; the surrounding variable assignment remains a separate action. Using type(value) is int excludes Boolean constants, even though Python treats bool as a subclass of int.
import ast

OPS = {ast.Add: lambda a, b: a + b,
       ast.Sub: lambda a, b: a - b,
       ast.Mult: lambda a, b: a * b}

def evaluate(node):
    if isinstance(node, ast.Constant) and type(node.value) is int:
        return node.value
    if isinstance(node, ast.BinOp) and type(node.op) in OPS:
        return OPS[type(node.op)](evaluate(node.left), evaluate(node.right))
    raise ValueError("outside the integer-expression language")

for source in ("x=2+3*4", "x=(2+3)*4"):
    tree = ast.parse(source, optimize=0)
    statement = tree.body[0]
    print(statement.targets[0].id, evaluate(statement.value))
# x 14
# x 20
The children in a rooted tree have ordered roles: left and right cannot be interchanged. For subtraction, 8-3 gives while 3-8 gives . Operator associativity also matters: 8-3-1 parses as (8-3)-1, giving , whereas 8-(3-1) gives . Here the syntax groups operators to the left; this does not assert the mathematical associativity of subtraction. Operator precedence determines grouping, rather than a general permission to reorder execution. For example, Python evaluates the calls in f()+g()*h() in the order f, g, h, although the multiplication result must be ready before the outer addition. [ref]
Additive combinatorics Created 2026-09-24 Updated 2026-10-13
Additive combinatorics studies how the cardinalities and sumset representation functions of sumsets reveal structure in finite sets contained in abelian groups. Write the group operation as addition: the ambient abelian group may be the integers , a finite cyclic group, or another abelian group. The same definitions apply, but the ambient group changes which bounds are possible.
The basic experiment is to add every ordered pair of members of a finite set. The sumset records the distinct answers; the sumset representation function records how often each answer occurs; the additive energy counts coincidences between those answers. An arithmetic progression produces many repeated sums, so its sumset grows slowly and its additive energy is relatively large. The doubling constant measures that growth relative to the original cardinality.
The examples below compare the arithmetic progression with the more spread-out integer set . Their four members give sixteen ordered pairs in each case, but different numbers of distinct sums. This small comparison illustrates the definitions; it does not establish a claim about arbitrarily large sets. For a systematic introduction, see Tao and Vu's author page for Additive Combinatorics, with free sample chapters on sum set estimates and additive geometry.
Additive energy Created 2026-09-24 Updated 2026-10-13
The additive energy of a finite set in an abelian group counts additive quadruples, with order and repeated members allowed:
At a fixed sum , independently choosing two of its ordered pairs gives additive quadruples. Thus additive energy weights heavily represented sums more strongly than the cardinality of the sumset does.
For and , the sumset representation functions give
The arithmetic progression has additional coincidences such as . The set still has coincidences forced by commutativity, including , so its additive energy is not merely the sixteen identical-pair comparisons.
The same additive energy can be counted using the difference set. Define . The identity is equivalent to , and the coordinate rearrangement is a bijection. Consequently
For , the difference counts from through are again . For , the zero difference has four representations and each of the twelve nonzero differences has one, giving . The sumset representation functions for sums and differences can look different while their squared totals agree.
For every nonempty finite set in an abelian group ,
The lower bound follows from the Cauchy-Schwarz inequality and the total sumset representation function count:
For the upper bound, any three members determine at most one fourth member of an additive quadruple. See Yufei Zhao's MIT lecture 25, pages 1-3, for representation counts and the energy bounds.
In the two integer examples, the lower bounds are and , and the upper bound is . For the subgroup of , each element of has three sum representations, so and both bounds are equalities.
For nonempty , dividing additive energy by gives a relative measure between and one. Small doubling constant therefore forces relatively large additive energy. A converse requires care: the Balog-Szemerédi-Gowers theorem extracts a large subset with small doubling constant, rather than asserting that all of has small doubling constant.
Let be an additive function. Suppose for all in a nondegenerate interval , meaning . Then is continuous everywhere and . A finite bound on even one such interval is enough; a bound at one isolated point is not.
Here is a proof outline that turns a finite bound into arbitrarily small outputs. Set and . If , then both and lie in , so Cauchy's functional equation gives
Given , choose a positive integer with . For , the argument lies in , and rational homogeneity of an additive function gives
This proves continuity at zero. Now additive function continuous at one point is linear completes the proof. The key mechanism is that repeated addition magnifies a tiny input without escaping the bounded region, forcing the original output to be small.
The integers form an infinite cyclic group under addition, with identity element zero and inverse element for . Its two generators are and . Every subgroup is for a unique nonnegative integer : if it is nonzero, take its least positive element and use division with remainder to show that every element is a multiple of it. The zero subgroup corresponds to .
Let have the integers as objects, with for or and zero otherwise. Composition is bilinear, the generator of is the identity, and the composite of two degree-lowering generators is zero. Additive functors are exactly chain complexes in the additive category .
Adjacent pair in a linear order Created 2026-10-25 Updated 2026-10-31
Two elements of a totally ordered set form an adjacent pair when no domain element lies strictly between them. Every pair of consecutive integers is adjacent, while a dense order has no adjacent pair. A gap in a subset of the real numbers matters here only through which points belong to the domain: are adjacent in .
Alexandrian integer 2026-10-20
A positive integer with nonzero integers satisfying . Equivalently, . A useful parametrization is for positive integers with , coming from the signed triple .
Algebra Created 2026-09-24 Updated 2026-10-13
Algebra studies equations, algebraic operations, and the structures that make their rules work. Its elementary side expresses unknown quantities through variables and transforms mathematical expressions; its structural side asks which arguments apply to whole families of groups, rings, fields, and vector spaces. The useful step is identifying exactly which properties a calculation needs, so that it can be reused in a new setting.
For example, the polynomial equation over the real numbers factors as , giving roots and . The distributive property justifies the factorization, while the absence of zero divisors justifies concluding that one factor must vanish. Over the finite field , the same integer coefficients reduce to , with roots and . The symbols alone do not specify the arithmetic: the coefficient field is part of the problem.
In a ring with zero divisors, a familiar step can fail. Modulo , all four residue classes satisfy . For , the factorization holds modulo , yet neither factor is zero. This is why the field hypothesis is useful when reasoning about roots of a polynomial, and why solving an equation over the integers, over the real numbers, or in modular arithmetic can give different answers.
The structure is also useful beyond scalar arithmetic. Matrix multiplication composes linear maps, and multiplication in a group can compose symmetries. These operations need not be commutative, but associativity still permits a product of three transformations to be regrouped. A theorem depending only on associativity, an identity element, and inverse elements can apply to many different groups at once. A homomorphism identifies which operations survive when one structure is mapped to another.
Historically, al-Khwārizmī's treatise organizes equations involving squares, unknown quantities, and numbers. Frederic Rosen's 1831 English translation includes the calculation now written and geometric explanations for completing the square. In modern notation, gives or ; the historical treatment seeks the positive quantity . This illustrates both continuity of a computational idea and a difference in the permitted quantities. [ref]
Algebraic integer Created 2026-09-24 Updated 2026-10-13
An algebraic number is an algebraic integer if it is a polynomial root of a monic polynomial with integer coefficients:
Equivalently, its algebraic minimal polynomial over has integer coefficients. The requirement that the leading coefficient be one matters: satisfies and is an algebraic number, but is not an algebraic integer. In fact the rational numbers that are algebraic integers are exactly the integers.[ref]
Some useful computed examples are:
Algebraic integers are closed under addition, subtraction, and multiplication. Thus they provide an arithmetic ring, while division is allowed only when the result is again an algebraic integer. The algebraic integer module criterion explains this closure without having to find a new polynomial for every sum and product.
Algebraic number theory Created 2026-09-24 Updated 2026-10-18
Algebraic number theory studies integer factorization, divisibility, prime ideals, and units after extending the rational numbers to a number field. Its basic objects are a number field and its ring of integers : the counterparts of and . The field norm turns multiplication in into multiplication of rational numbers, and takes algebraic integers to integers. These connections let linear algebra and Euclidean geometry answer arithmetic questions.[ref]
A first example is with ring of integers . The integer acquires the factorization
Each factor has field norm . Neither is a unit, and each is an irreducible element: any factorization into two nonunits would factor the prime number into two integers of absolute value greater than one. Arithmetic in a larger ring thus reveals structure invisible in ordinary integer factorization.
There is also a complication: unique factorization of elements can fail, as in the failure of unique factorization in the ring of integers generated by square root of minus five. The general replacement is prime ideal factorization. The ideal class group measures the obstruction to making every ideal a principal ideal.
The historical motivation is visible in Richard Dedekind's original 1877 exposition: he begins with ordinary integer factorization, passes to Gaussian integers, and then uses a quadratic example to explain why ideals are needed. His later section establishes unique factorization of ideals in a number field. This is a direct record of the development of the theory, rather than a claim that all its ideas originated in one year.[ref][ref]
Algebraic structure 2026-10-13
An algebraic structure is a set equipped with specified algebraic operations satisfying selected axioms. An operation's domain is part of the structure: a binary operation on takes two elements of and produces another element of . Groups specify one such operation, rings specify addition and multiplication, and vector spaces specify vector addition and scalar multiplication by a separate field.
Different choices of operations can give the same underlying set different structures. The integers form a group under addition, since every integer has an additive inverse. They do not form a group under multiplication: for example, has no multiplicative inverse among the integers. Even the nonzero integers fail that inverse requirement. In contrast, nonzero rational numbers form a group under multiplication.
Finite multiplication tables make such distinctions visible. Arithmetic modulo gives a field; arithmetic modulo gives a commutative ring with zero divisors. In the former, multiplying by any nonzero element permutes all residue classes. In the latter, multiplying by reaches only , and even though both factors are nonzero.
The goal is to extract reusable properties rather than memorize isolated tables. A homomorphism preserves the specified operations, and an isomorphism shows that two structures have identical operation patterns after relabeling.
Algebraic topology Created 2026-09-24 Updated 2026-10-18
Algebraic topology translates questions about topological spaces and continuous maps into questions about groups and other structures from algebra. A topological invariant compresses the enormous amount of data in a space into something one can calculate. For example, the fundamental group records which based loops can be continuously deformed into one another. A filled disk has trivial fundamental group, whereas a circle has fundamental group : an integer remembers how many times a loop goes around.
This compression also respects maps. By functoriality of the fundamental group, a continuous map preserving the chosen basepoints induces a group homomorphism; successive maps induce successive group homomorphisms. Thus geometry supplies arithmetic constraints. A proposed homotopy equivalence must induce an isomorphism, so incompatible fundamental groups rule it out before anyone attempts to construct the deformation.
The beauty is that a whole annulus can retain exactly the same homotopy type as its inner circle. Its thickness disappears under a deformation retraction, while the obstruction to shrinking a loop survives. Equal fundamental groups alone do not establish a homeomorphism or a homotopy equivalence between arbitrary topological spaces.
This turns a visual question into a reusable test. Suppose a continuous map sends the inner circle of an annulus once around another circle. Could it extend over a filled disk spanning that boundary? Such an extension would supply a homotopy shrinking the image loop to a point. Its winding number would have to change from one to zero, which homotopy invariance of winding number forbids. Algebra rules out the extension even when no particular formula for it has been proposed.
Algorithm termination 2026-10-18
Algorithm termination means that execution finishes after finitely many steps on the inputs under consideration. Specify that domain: the stalled loop in partial correctness terminates for but runs forever for . A successful run on one input does not establish termination on another.
A useful method is a loop variant that is a nonnegative integer at every condition check and strictly decreases whenever the condition is true and the body completes. Also prove that condition evaluation and each body execution terminate. An infinite run would then give an infinite strictly decreasing sequence of nonnegative integers, contradicting their well-founded relation. This establishes algorithm termination without enumerating all executions.
For the summation loop verification, begins at and decreases by exactly one per iteration. The body executes exactly times, including zero times for . Merely bounding a decreasing measure below is insufficient for real numbers: decreases forever while staying positive. The choice of a well-founded relation supplies the essential progress argument; well-founded progress in recursion applies the same idea to recursive calls.