Normalize - Maple Help

Logic

 Normalize
 normalize a Boolean expression
 Convert
 convert a Boolean expression

 Calling Sequence Normalize(b, form) Convert(b, form)

Parameters

 b - Boolean expression form - (optional) expression where form=CNF, DNF, or NNF

Options

 • The permissible options are described in this section.
 form=f
 The normal form used is determined by the form option. The value of form may be CNF (conjunctive normal form), DNF (disjunctive normal form), or NNF (negation normal form) If no such option is given, disjunctive normal form is used.

Description

 • The Normalize command transforms a given Boolean expression into a specific normal form.
 • The Convert command is a synonym for Normalize and behaves identically.
 • The transformation is performed by applying associativity and De Morgan's law to the given expression. Normalization to CNF or DNF additionally makes use of distributivity.
 • The resulting expression is not guaranteed to be unique or minimized.

Examples

 > $\mathrm{with}\left(\mathrm{Logic}\right):$
 > $\mathrm{Normalize}\left(¬\left(a\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&and\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}b\right)\right)$
 $\left({¬}{a}\right){\vee }\left({¬}{b}\right)$ (1)
 > $\mathrm{Normalize}\left(a\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&and\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\left(b\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&or\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}c\right)\right)$
 $\left({a}{\wedge }{b}\right){\vee }\left({a}{\wedge }{c}\right)$ (2)
 > $\mathrm{Normalize}\left(¬\left(a\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&or\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}b\right),\mathrm{form}=\mathrm{CNF}\right)$
 $\left({¬}{a}\right){\wedge }\left({¬}{b}\right)$ (3)
 > $\mathrm{Normalize}\left(a\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&or\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\left(¬\left(b\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&or\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\left(c\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}&and\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}d\right)\right)\right),\mathrm{form}=\mathrm{NNF}\right)$
 ${a}{\vee }\left(\left({¬}{b}\right){\wedge }\left(\left({¬}{c}\right){\vee }\left({¬}{d}\right)\right)\right)$ (4)

Compatibility

 • The Logic[Normalize] command was updated in Maple 2018.