MULTI-valued logic
a | b a & b
a | b -– true if a or b true or missing a & b – true if a and b true or missing
assert ~mi(a) assert ~mi(b) gen byte c = a | b
gen byte c = a | b if ~mi(a) & ~mi(b)
a|b -- true if either a or b is true, regardless of what the other is a&b -- false if either a or b is false, regardless of what the other is
Three-valued logic or 1 . and 1 . a not a 1 .
Three-valued logic, Liberal protocol or 1 . and 1 . a not a 1 .
Three-valued logic, Draconian protocol or 1 . and 1 . a not a 1 .
1 | . 0 | . 1 & . 0 & .
a|b -- true if either a or b is true, regardless of what the other is a&b -- false if either a or b is false, regardless of what the other is
1 | . 0 | . 1 & . 0 & .
Draconian: .b Unknown: .u Liberal: .v
(1 | .u) & .v = 1 (1 | .u) & .u = .u (1 | .b) & .U = .b
Or And Not | 1 .u .v .b & 1 .u .v .b a ~a 1 .u .v .b
At least one child is female: f1 | f2 | f3 | f4 | f5 | f6 | f7 | f8 Every child is female: f1 & f2 & f3 & f4 & f5 & f6 & f7 & f8 At least one child is male: ~f1 | ~f2 | ~f3 | ~f4 | ~f5 | ~f6 | ~f7 | ~f8 Every child is male: ~f1 & ~f2 & ~f3 & ~f4 & ~f5 & ~f6 & ~f7 & ~f8
3 + . 7 + . 0 * . 12 / . sum(4, 17, 30, 12, .) mean(4, 17, 30, 12, .)
3 + .v = 3 3 + .b = .b Mean((4, 17, 30, 12, .u) = .u Mean((4, 17, 30, 12, .v) = 15.75 Mean((4, 17, 30, 12, .b) = .b
0 * .u = 0 12 / .u = .b
(12 + 3 + .v) * 2 = 30 (12 + 3 + .v) * .u = .u ((7 + .v) * 2 – 14) * .u = 0
.b .u Normal values .v
Multiplication Or And .b .u All other numbers .v .b 1 .u .v .b .u 1 .v
Sup n Sup n-1 … Sup 2 Sup 1 Normal values Inf 1 Inf 2 Inf k