19.11.2014 Views

The Fortress Language Specification - CiteSeerX

The Fortress Language Specification - CiteSeerX

The Fortress Language Specification - CiteSeerX

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

24.2.19 possibly(self): Boolean<br />

24.2.20 necessarily(self):Boolean<br />

24.2.21 certainly(self): Boolean<br />

<strong>The</strong> predicate possibly returns true if and only if true is a member of this boolean interval.<br />

<strong>The</strong> predicate necessarily returns true if and only if false is not a member of this boolean interval (thus “necessarily”<br />

is a concise way of saying “not possibly not”).<br />

<strong>The</strong> predicate certainly returns true if and only if this boolean interval is True, that is, it contains true but not false<br />

(thus “certainly” is a concise way of saying “both possibly and necessarily”).<br />

<strong>The</strong> fourteen nontrivial functions from a value x of type BooleanInterval to type Boolean may thus be expressed as<br />

follows:<br />

necessarily(x) ∧ necessarily(¬x)<br />

certainly(¬x)<br />

necessarily(¬x)<br />

certainly(x)<br />

necessarily(x)<br />

possibly(x) ≡ necessarily(x)<br />

necessarily(x) ∨ necessarily(¬x)<br />

possibly(x) ∧ possibly(¬x)<br />

possibly(x) ∨ necessarily(x)<br />

possibly(¬x)<br />

¬certainly(x)<br />

possibly(x)<br />

¬certainly(¬x)<br />

possibly(x) ∨ possibly(¬x))<br />

<strong>The</strong>re are other ways to express some of them; for example, necessarily(x) ∧ necessarily(¬x) is the same as<br />

x = Impossible , and possibly(x) ∧ possibly(¬x) is the same as x = Uncertain .<br />

24.2.22 getter empty():BooleanInterval<br />

24.2.23 getter universe():BooleanInterval<br />

<strong>The</strong> getter empty returns the value Impossible, and the getter universe returns the value Uncertain. <strong>The</strong>se are defined<br />

primarily for the benefit of the BooleanAlgebra trait that BooleanInterval extends.<br />

24.2.24 opr =(self,other: BooleanInterval):Boolean<br />

Two boolean intervals are strictly equivalent if and only if they are the same boolean interval.<br />

24.2.25 getter hashCode(): Z64<br />

24.2.26 toString():String<br />

<strong>The</strong> toString method returns either “True” or “False” or “Uncertain” or “Impossible” as appropriate.<br />

191

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

Saved successfully!

Ooh no, something went wrong!