What ⊥ means
In logic, ⊥ is a statement that can never be true. Called falsum or bottom, it marks absurdity: a proof that derives ⊥ has hit a contradiction, which is how a proof by contradiction ends. Some logics even define “not φ” as φ ⊥, “φ leads to absurdity.”
Outside logic, bottom means the lowest element of an ordering. In a lattice (a structure where any two elements have a greatest lower bound), ⊥ sits below everything. In programming-language theory, the bottom type has no values at all, so a function returning it never returns normally.
Is ⊥ the perpendicular symbol?
Traditionally yes; in current Unicode, use . Older character sets and the HTML entity ⊥ reuse ⊥ for perpendicular lines, so pasted geometry like AB ⊥ CD is still common. Unicode proposed a dedicated perpendicular relation, , in 2003 and encoded it in 2005, spaced as a relation between two objects.
Technical and formal: expect mathematics, logic, programming-language theory or markup.
Don’t read ⊥ as perpendicular by default; in logic it means false.
Part of the collection
What it means when someone sends it to you
4 readingsThe assumptions led to falsity, an impossible proposition.
Don't confuse it with
3Combination ideas
4Worth knowing
- W3C’s historical MathML character table mapped both “bottom” and “perpendicular” names to U22A5, which is why ⊥ still produces ⊥.
Questions people ask
2What does ⊥ do in APL?
It decodes. In APL, ⊥ turns a list of digits in a given base into a single number; its partner (encode) does the reverse.
Why does ⊥ appear in programming type discussions?
It names the bottom type: below every other type, with no values, used for code that never returns normally. Languages spell it Never, Nothing, or !.
Collections with ⊥
3How to type or find ⊥
- Also called
- bottom · falsum · absurdity
- Search it as
- contradiction · upside down t · perpendicular · empty type · decode
- Shows up in
- Anything that takes text · its shape is whatever your font draws
⊥\22A5Codes and encoding1 code points
A visible symbol can contain several code points. JS .length counts UTF-16 units; UTF-8 counts bytes.







