Skip to content

Negating constants: NOT TRUE = FALSE, NOT FALSE = TRUE

Negating a constant gives the other constant: NOT TRUE = FALSE and NOT FALSE = TRUE.

Engine name: Negating a constantFR: Négation d'une constanteDE: Negation einer Konstante

NOT turns the constant TRUE into FALSE and FALSE into TRUE.

The law is the definition of NOT applied to the two constants, and it is listed as a law because the simplifier needs a named rule for the step. After a complement law has turned a subexpression into TRUE and a surrounding NOT remains, this law folds NOT TRUE into FALSE so that the identity or null law can finish the job.

It is also the reason the engine prints constants consistently: TRUE and FALSE in words and programming notation, 1 and 0 in the mathematical and algebra notations, so NOT 1 prints as ¬1 there and simplifies to 0.

The truth table below has a single row, because the identity has no variables; the engine's convention is that a zero-input formula has exactly one row.

Statement

NOT TRUE = FALSENOT FALSE = TRUE

Proof by truth table: NOT TRUE = FALSE

NOT TRUE = FALSE
#lhsrhs
0FALSEFALSE
lhs ≡ rhs holds · lhs and rhs agree on every assignment. · Exhaustively checked and solver cross-checked · 1 rows

The same law in four notations

WordsNOT TRUE
Programming!TRUE
Mathematical¬1
Algebra1'
LaTeX\overline{1}
WordsFALSE
ProgrammingFALSE
Mathematical0
Algebra0
LaTeX0
NOT TRUE = FALSE NOT TRUE = FALSE lhsPRIMARY rhs NOT TRUE FALSE
NOT TRUE = FALSE NOT TRUE = FALSE lhsPRIMARY rhs NOT TRUE FALSE

Proof by truth table: NOT FALSE = TRUE

NOT FALSE = TRUE
#lhsrhs
0TRUETRUE
lhs ≡ rhs holds · lhs and rhs agree on every assignment. · Exhaustively checked and solver cross-checked · 1 rows

The same law in four notations

WordsNOT FALSE
Programming!FALSE
Mathematical¬0
Algebra0'
LaTeX\overline{0}
WordsTRUE
ProgrammingTRUE
Mathematical1
Algebra1
LaTeX1
NOT FALSE = TRUE NOT FALSE = TRUE lhsPRIMARY rhs NOT FALSE TRUE
NOT FALSE = TRUE NOT FALSE = TRUE lhsPRIMARY rhs NOT FALSE TRUE

The common slip

Writing NOT 1 and expecting a number. In the engine's language 1 and 0 are the Boolean constants, not integers; there is no arithmetic.

Questions

Why does a constant formula have one row in its truth table?

A truth table has 2 to the power of the number of inputs rows; with zero inputs that is one row. The semantics specification states this so that exports and checks agree on the edge case.

Related

Lesson that teaches this

Tools

See also

Laws

Generated from the Tangibool engine, semantics tangibool-semantics/1, engine 1.0.0, build . Every table, map, simplification and verdict on these pages was computed by the Tangibool engine when the site was built, and every claim was re-checked by the same exact checker the app uses. Limits are stated where they apply. © 2026 Foreranger LTD.