# RE: st: My last word on strange world

 From David Kantor <[email protected]> To [email protected] Subject RE: st: My last word on strange world Date Thu, 10 Jan 2008 13:25:21 -0500

```At 12:37 PM 1/10/2008, Nick wrote:
```
```Chasing up that reference, it seems to me that in what you
proposed, -if2- is the lesser part of the proposal, as logical
expressions
often arise separately from -if-.

The larger part of the proposal is a three-way logic:

true AND true = true
true OR true = true
true AND false = false
true OR false = true
false AND false = false
false OR false = false
true AND missing = missing
true OR missing = true
missing AND missing = missing
missing OR missing = missing
false AND missing = false
false OR missing = missing

In essence, there are 6 pairs here that we know already,

true AND true = true
true OR true = true
true AND false = false
true OR false = true
false AND false = false
false OR false = false

and (to my first reading) two that seem "obvious"

missing AND missing = missing
missing OR missing = missing

and four that don't seem totally "obvious" to me,
at least not as a set

true AND missing = missing
true OR missing = true
false AND missing = false
false OR missing = missing

No doubt there's a larger story here.
[...]
```
Yes.
Seven years ago I did a presentation on 3-valued logic, in which I showed the above scheme (what you might call the standard scheme). I also gave another interpretation called "liberal", activated by the -liberal- option in the various programs of the trinary package. The liberal interpretation is...
true AND missing = true
false OR missing = false
with all the others the same as the standard.

Since then, I have come to realize that these alternative options indicate that the results of such operations depend on what you mean by missing. In the standard scheme, missing signifies "unknown". The liberal scheme says that missing means "vacuous" -- there is nothing there.

There in another option as well, which I leave aside.

It is possible to construct logic operations (AND, OR) that include all the interpretations together. (You get 5-valued logic, one of my back-burner projects.)
Furthermore, these notions can carry over to numeric computations.
2 + unknown = unknown
2 + vacuous = 2
And comparisons.
2 < unknown = unknown
2 < vacuous is an absurdity

(And other complications arise with comparisons.)

Computing a value is one thing, but this still leaves what to do when a action is conditional on a value:
list x if .

There is yet a larger story.

--David

*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/