e
(xor).Note: it is transformed with conjunctions and disjunctions.
var a = new LVar("a")
var b = new LVar("b")
assert (a^b).to_s == "((a & ~b) | (~a & b))"
# Exclusive disjunction with `e` (xor).
#
# Note: it is transformed with conjunctions and disjunctions.
#
# ~~~
# var a = new LVar("a")
# var b = new LVar("b")
# assert (a^b).to_s == "((a & ~b) | (~a & b))"
# ~~~
fun ^(e: LExpr): LExpr
do
return (self & ~e) | (~self & e)
end
lib/logic/lexpr.nit:139,2--151,4