Lably
Skip to content

Vertical bar

Typographic symbol

  • 11 min read
  • 3 chapters

Related on Lably

Through Mathematics, Computing and Mathematical logic

Usage

Mathematics

The vertical bar is used as a mathematical symbol in numerous ways. If used as a pair of brackets, it suggests the notion of size. These are:

  • absolute value: |x|, read "the absolute value of x"
  • cardinality: |S|, read "the cardinality of the set S" or "the length of a string S"
  • determinant: |A|, read "the determinant of the matrix A". When the matrix entries are written out, the determinant is denoted by surrounding the matrix entries by vertical bars instead of the usual brackets or parentheses of the matrix, as in |abcd|.
  • order: |G|, read "the order of the group G", or |g|, "the order of the element g∈G"

Likewise, the vertical bar is also used singly in many different ways:

  • conditional probability: P(X|Y), read "the probability of X given Y"
  • distance: P|ab, denoting the shortest distance between point P to line ab, so line P|ab is perpendicular to line ab
  • divisibility: a∣b, read "a divides b" or "a is a factor of b", though Unicode also provides special 'divides' and 'does not divide' symbols (U+2223 ∣ DIVIDES and U+2224 ∤ DOES NOT DIVIDE)
  • function evaluation: f(x)|x=4, read "f of x, evaluated at x equals 4" (see subscripts at Wikibooks)
  • restriction: f|A, denoting the restriction of the function f, with a domain that is a superset of A, to just A
  • set-builder notation: {x|x<2}, read "the set of x such that x is less than two". Often, a colon ':' is used instead of a vertical bar
  • the Sheffer stroke in logic: a|b, read "a nand b"
  • subtraction: f(x)|ab, read "f(x) from a to b", denoting f(b)−f(a). Used in the context of a definite integral with variable x.
  • A vertical bar can be used to separate variables from fixed parameters in a function, for example f(x|μ,σ), or in the notation for elliptic integrals.

The double vertical bar, ‖, is also employed in mathematics.

  • Parallelism: AB∥CD; reads "the line AB is parallel to the line CD"
  • Norm: ‖A‖; reads "the norm (length, size, magnitude etc.) of the matrix A". The norm of a one-dimensional vector is the absolute value and single bars are used.
  • Propositional truncation (a type former that truncates a type down to a mere proposition in homotopy type theory): for any a:A (read "term a of type A") we have |a|:‖A‖ (here |a| reads "image of a:A in ‖A‖" and |a|:‖A‖ reads "propositional truncation of A")
  • Integer complexity: ‖n‖; reads "the complexity of the integer n".

In LaTeX mathematical mode, the ASCII vertical bar produces a vertical line, and \| creates a double vertical line (a | b \| c is set as a|b‖c). This has different spacing from \mid and \parallel, which are relational operators: a \mid b \parallel c is set as a∣b∥c. See below about LaTeX in text mode.

Chemistry

In chemistry, the vertical line is used in cell notation of electrochemical cells.

Example,

Zn | Zn2+ || Cu2+ | Cu

Single vertical lines show components of the cell which do not mix, usually being in different phases. The double vertical line ( || ) is used to represent the salt bridge, which is used to maintain electrical neutrality within the electrochemical cell.

Physics

The vertical bar is used in bra–ket notation in quantum physics. Examples:

  • |ψ⟩: the quantum physical state ψ
  • ⟨ψ|: the dual state corresponding to the state above
  • ⟨ψ|ρ⟩: the inner product of states ψ and ρ
  • Supergroups in physics are denoted G(N|M), which reads "G, M vertical bar N"; here G denotes any supergroup, M denotes the bosonic dimensions, and N denotes the Grassmann dimensions.

Computing

Pipe

A pipe is an inter-process communication mechanism originating in Unix, which directs the output (standard out and, optionally, standard error) of one process to the input (standard in) of another. In this way, a series of commands can be "piped" together, giving users the ability to quickly perform complex multi-stage processing from the command line or as part of a Unix shell script ("bash file"). In most Unix shells (command interpreters), this is represented by the vertical bar character. For example:

<a rel="mw:WikiLink" href="./Grep" title="Grep" id="mwAQQ">grep</a> -i 'blair' filename.log | <a rel="mw:WikiLink" href="./More_(command)#Unix" title="More (command)" id="mwAQU">more</a>

where the output from the grep process (all lines containing 'blair') is piped to the more process (which allows a command line user to read through results one page at a time).

The same "pipe" feature has been adopted in other operating systems.

This usage has led to the character itself being called "pipe".

Disjunction

In many programming languages, the vertical bar is used to designate the logic operation or, either bitwise or or logical or.

Specifically, in C and other languages following C syntax conventions, such as C++, Perl, Java and C#, a | b denotes a bitwise or; whereas a double vertical bar a || b denotes a (short-circuited) logical or. Since the character was originally not available in all code pages and keyboard layouts, ANSI C can transcribe it in form of the trigraph ??!, which, outside string literals, is equivalent to the | character.

In regular expression syntax, the vertical bar again indicates logical or (alternation). For example: the Unix command grep -E 'fu|bar' matches lines containing 'fu' or 'bar'.

Concatenation

The double vertical bar operator "||" denotes string concatenation in PL/I, REXX, ooRexx, standard ANSI SQL, and theoretical computer science (particularly cryptography).

Delimiter

Although not as common as commas or tabs, the vertical bar can be used as a delimiter in a flat file. Examples of a pipe-delimited standard data format are LEDES 1998B and HL7. It is frequently used because vertical bars are typically uncommon in the data itself.

Similarly, the vertical bar may see use as a delimiter for regular expression operations (e.g. in sed). This is useful when the regular expression contains instances of the more common forward slash (/) delimiter; using a vertical bar eliminates the need to escape all instances of the forward slash. However, this makes the bar unusable as the regular expression "alternative" operator.

Backus–Naur form

In Backus–Naur form, an expression consists of sequences of symbols and/or sequences separated by '|', indicating a choice, the whole being a possible substitution for the symbol on the left.

<span id="mwAUY"></span><span class="p" id="mwAUc"><</span><span class="nc" id="mwAUg">personal-name</span><span class="p" id="mwAUk">></span> <span class="o" id="mwAUo">::=</span> <span class="p" id="mwAUs"><</span><span class="nc" id="mwAUw">name</span><span class="p" id="mwAU0">></span> | <span class="p" id="mwAU4"><</span><span class="nc" id="mwAU8">initial</span><span class="p" id="mwAVA">></span>

Concurrency operator

In calculi of communicating processes (like pi-calculus), the vertical bar is used to indicate that processes execute in parallel.

APL

The pipe in APL is the modulo or residue function between two operands and the absolute value function next to one operand.

List comprehensions

The vertical bar is used for list comprehensions in some functional languages, e.g. Haskell and Erlang. Compare set-builder notation.

Text markup

The vertical bar is used as a special character in lightweight markup languages, notably MediaWiki's Wikitext (in the templates and internal links).

In LaTeX text mode, the vertical bar produces an em dash (—). The \textbar command can be used to produce a vertical bar.

Closures

The vertical bar is used to denote closures certain languages such as Ruby and Rust.

Phonetics and orthography

In the Khoisan languages and the International Phonetic Alphabet, the vertical bar is used to write the dental click (). A double vertical bar is used to write the alveolar lateral click (). Since these are technically letters, they have their own Unicode code points in the Latin Extended-B range: U+01C0 ǀ LATIN LETTER DENTAL CLICK and U+01C1 ǁ LATIN LETTER LATERAL CLICK.

Some Northwest and Northeast Caucasian languages written in the Cyrillic script have a vertical bar called palochka (Russian: палочка, lit. 'little stick'), indicating the preceding consonant is an ejective.

Longer single and double vertical bars are used to mark prosodic boundaries in the IPA.

Literature

In medieval European manuscripts, a single vertical bar was a common variant of the virgula / used as a comma, or caesura mark.

In Sanskrit and other Indian languages, a single vertical mark,।, called a danda, has a similar function as a period (full stop). Two bars,॥, (a 'double danda') is the equivalent of a pilcrow in marking the end of a stanza, paragraph or section. The danda has its own Unicode code point, U+0964 । DEVANAGARI DANDA; as does the double danda: U+0965 ॥ DEVANAGARI DOUBLE DANDA.

Poetry

A double vertical bar ⟨||⟩ or ⟨‖⟩ is the standard caesura mark in English literary criticism and analysis. It marks the strong break or caesura common to many forms of poetry, particularly Old English verse. It is also traditionally used to mark the division between lines of verse printed as prose (the style preferred by Oxford University Press), though it is now often replaced by the forward slash.

Notation

In the Geneva Bible and early printings of the King James Version, a double vertical bar is used to mark margin notes that contain an alternative translation from the original text. These margin notes always begin with the conjunction "or". In later printings of the King James Version, the double vertical bar is irregularly used to mark any comment in the margins.

A double vertical bar symbol may be used to call out a footnote. (The traditional order of these symbols in English is *, †, ‡, §, ‖, ¶, so its use is very rare; in modern usage, numbers and letters are preferred for endnotes and footnotes.)

Music scoring

In music, when writing chord sheets, single vertical bars associated with a colon (|: A / / / :|) represents the beginning and end of a section (e.g. Intro, Interlude, Verse, Chorus) of music. Single bars can also represent the beginning and end of measures (|: A / / / | D / / / | E / / / :|). A double vertical bar associated with a colon can represent the repeat of a given section (||: A / / / :|| - play twice).

Sign in to keep reading

2 more chapters are free with a Lably account.

More in Foundations