Majority function: Difference between revisions
imported>Beland m convert special characters found by Wikipedia:Typo Team/moss (via WP:JWB) |
imported>AnomieBOT m Substing templates: {{Format ISBN}}. See User:AnomieBOT/docs/TemplateSubster for info. |
||
| Line 31: | Line 31: | ||
== Ties == | == Ties == | ||
Most applications deliberately force an odd number of inputs so they don't have to deal with the question of what happens when exactly half the inputs are 0 and exactly half the inputs are 1. The few systems that calculate the majority function on an even number of inputs are often biased towards "0" – they produce "0" when exactly half the inputs are 0 – for example, a 4-input majority gate has a 0 output only when two or more 0's appear at its inputs.<ref>{{cite book |last1=Peterson |first1=William Wesley |url=https://archive.org/details/errorcorrectingc00pete |title=Error-correcting Codes |last2=Weldon |first2=E.J. |publisher=MIT Press |year=1972 |isbn= | Most applications deliberately force an odd number of inputs so they don't have to deal with the question of what happens when exactly half the inputs are 0 and exactly half the inputs are 1. The few systems that calculate the majority function on an even number of inputs are often biased towards "0" – they produce "0" when exactly half the inputs are 0 – for example, a 4-input majority gate has a 0 output only when two or more 0's appear at its inputs.<ref>{{cite book |last1=Peterson |first1=William Wesley |url=https://archive.org/details/errorcorrectingc00pete |title=Error-correcting Codes |last2=Weldon |first2=E.J. |publisher=MIT Press |year=1972 |isbn=978-0-262-16039-1 |url-access=registration}}</ref> In a few systems, the tie can be broken randomly.<ref>{{cite journal |last1=Chaouiya |first1=Claudine |last2=Ourrad |first2=Ouerdia |last3=Lima |first3=Ricardo |date=July 2013 |title=Majority Rules with Random Tie-Breaking in Boolean Gene Regulatory Networks |journal=PLOS ONE |publisher=Public Library of Science |volume=8 |article-number=e69626 |doi=10.1371/journal.pone.0069626 |pmc=3724945 |doi-access=free |number=7|pmid=23922761 |bibcode=2013PLoSO...869626C }}</ref> | ||
== Monotone formulae for majority == | == Monotone formulae for majority == | ||
Latest revision as of 19:57, 1 October 2025
Template:Short description In Boolean logic, the majority function (also called the median operator) is the Boolean function that evaluates to false when half or more arguments are false and true otherwise, i.e. the value of the function equals the value of the majority of the inputs.
Boolean circuits
A majority gate is a logical gate used in circuit complexity and other applications of Boolean circuits. A majority gate returns true if and only if more than 50% of its inputs are true.
For instance, in a full adder, the carry output is found by applying a majority function to the three inputs, although frequently this part of the adder is broken down into several simpler logical gates.
Many systems have triple modular redundancy; they use the majority function for majority logic decoding to implement error correction.
A major result in circuit complexity asserts that the majority function cannot be computed by AC0 circuits of subexponential size.
Properties
For any x, y, and z, the ternary median operator ⟨x, y, z⟩ satisfies the following equations.
- ⟨x, y, y⟩ = y
- ⟨x, y, z⟩ = ⟨z, x, y⟩
- ⟨x, y, z⟩ = ⟨x, z, y⟩
- ⟨⟨x, w, y⟩, w, z⟩ = ⟨x, w, ⟨y, w, z⟩⟩
An abstract system satisfying these as axioms is a median algebra.
Other useful properties of the ternary median operator function include:
- given ⟨x, y, z⟩ = w, ⟨x, y, w⟩ = z
- ⟨¬x, ¬y, ¬z⟩ = ¬⟨x, y, z⟩
- ⟨x, y, x ⊕ y ⊕ z⟩ = ⟨x, y, ¬z⟩
- ⟨¬x, y, x ⊕ y ⊕ z⟩ = ⟨¬x, y, z⟩
Ties
Most applications deliberately force an odd number of inputs so they don't have to deal with the question of what happens when exactly half the inputs are 0 and exactly half the inputs are 1. The few systems that calculate the majority function on an even number of inputs are often biased towards "0" – they produce "0" when exactly half the inputs are 0 – for example, a 4-input majority gate has a 0 output only when two or more 0's appear at its inputs.[1] In a few systems, the tie can be broken randomly.[2]
Monotone formulae for majority
For n = 1 the median operator is just the unary identity operation x. For n = 3 the ternary median operator can be expressed using conjunction and disjunction as xy + yz + zx.
For an arbitrary n there exists a monotone formula for majority of size O(n5.3). This is proved using probabilistic method. Thus, this formula is non-constructive.[3]
Approaches exist for an explicit formula for majority of polynomial size:
- Take the median from a sorting network, where each compare-and-swap "wire" is simply an OR gate and an AND gate. The Ajtai–Komlós–Szemerédi (AKS) construction is an example.
- Combine the outputs of smaller majority circuits.[4]
- Derandomize the Valiant proof of a monotone formula.[5]
See also
- Boolean algebra (structure)
- Boolean algebras canonically defined
- Boyer–Moore majority vote algorithm
- Majority problem (cellular automaton)
Notes
References
- Script error: No such module "citation/CS1".