19.11.2014 Views

The Fortress Language Specification - CiteSeerX

The Fortress Language Specification - CiteSeerX

The Fortress Language Specification - CiteSeerX

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

24.2.15 opr ∪(self,other: BooleanInterval): BooleanInterval<br />

<strong>The</strong> union operator ∪ ( UNION or CUP ) returns Uncertain if either argument is Uncertain; otherwise, if either argument<br />

is Impossible, it returns the other argument; otherwise, if the arguments are the same value (strictly equivalent),<br />

it returns that value; otherwise it returns Uncertain. <strong>The</strong> ∪ operator may be described by this table:<br />

∪ Uncertain True False Impossible<br />

Uncertain Uncertain Uncertain Uncertain Uncertain<br />

True Uncertain True Uncertain True<br />

False Uncertain Uncertain False False<br />

Impossible Uncertain True False Impossible<br />

24.2.16 opr SET COMPLEMENT(self):BooleanInterval<br />

<strong>The</strong> set complement operator SET COMPLEMENT returns Uncertain if its argument is Impossible, Impossible if its<br />

argument is Uncertain, False if its argument is True, and True if its argument is False.<br />

24.2.17 opr SYMDIFF(self,other: BooleanInterval):BooleanInterval<br />

<strong>The</strong> symmetric difference operator SYMDIFF produces a result that contains a given boolean value if and only if<br />

exactly one of the arguments contains that boolean value. <strong>The</strong> SYMDIFF operator may be described by this table:<br />

SYMDIFF Uncertain True False Impossible<br />

Uncertain Impossible False True Uncertain<br />

True False Impossible Uncertain True<br />

False True Uncertain Impossible False<br />

Impossible Uncertain True False Impossible<br />

24.2.18 opr \(self,other: BooleanInterval):BooleanInterval<br />

<strong>The</strong> set difference operator \ ( SETMINUS ) produces a result that contains a given boolean value if and only if the<br />

first argument contains that boolean value but the second argument does not. <strong>The</strong> \ operator may be described by this<br />

table:<br />

\ Uncertain True False Impossible<br />

Uncertain Impossible False True Uncertain<br />

True Impossible Impossible True True<br />

False Impossible False Impossible False<br />

Impossible Impossible Impossible Impossible Impossible<br />

190

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!