Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 205eabd32f631ce3da3bbeb9faa690a6 > files > 26

ghc-type-level-devel-0.2.4-4.fc14.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--Rendered using the Haskell Html Library v0.2-->
<HTML
><HEAD
><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"
><TITLE
>Data.TypeLevel.Bool</TITLE
><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"
><SCRIPT SRC="haddock-util.js" TYPE="text/javascript"
></SCRIPT
><SCRIPT TYPE="text/javascript"
>window.onload = function () {setSynopsis("mini_Data-TypeLevel-Bool.html")};</SCRIPT
></HEAD
><BODY
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="topbar"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD
><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "
></TD
><TD CLASS="title"
>type-level-0.2.4: Type-level programming library</TD
><TD CLASS="topbut"
><A HREF="src/Data-TypeLevel-Bool.html"
>Source code</A
></TD
><TD CLASS="topbut"
><A HREF="index.html"
>Contents</A
></TD
><TD CLASS="topbut"
><A HREF="doc-index.html"
>Index</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="modulebar"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD
><FONT SIZE="6"
>Data.TypeLevel.Bool</FONT
></TD
><TD ALIGN="right"
><TABLE CLASS="narrow" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="infohead"
>Portability</TD
><TD CLASS="infoval"
>non-portable</TD
></TR
><TR
><TD CLASS="infohead"
>Stability</TD
><TD CLASS="infoval"
>experimental (MPTC, non-standarad instances)</TD
></TR
><TR
><TD CLASS="infohead"
>Maintainer</TD
><TD CLASS="infoval"
>alfonso.acosta@gmail.com</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
><B
>Contents</B
></TD
></TR
><TR
><TD
><DL
><DT
><A HREF="#1"
>Type-level boolean values
</A
></DT
><DT
><A HREF="#2"
>Type-level boolean operations
</A
></DT
></DL
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Description</TD
></TR
><TR
><TD CLASS="doc"
>Type-level Booleans.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Synopsis</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> BoolI b =&gt; <A HREF="#t%3ABool"
>Bool</A
> b </TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AtoBool"
>toBool</A
> :: BoolI b =&gt; b -&gt; <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AFalse"
>False</A
> </TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Afalse"
>false</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3ATrue"
>True</A
> </TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Atrue"
>true</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AreifyBool"
>reifyBool</A
> ::  <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; (<SPAN CLASS="keyword"
>forall</SPAN
> b. <A HREF="Data-TypeLevel-Bool.html#t%3ABool"
>Bool</A
> b =&gt; b -&gt; r) -&gt; r</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2) =&gt; <A HREF="#t%3ANot"
>Not</A
> b1 b2 | b1 -&gt; b2, b2 -&gt; b1</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Anot"
>not</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> b1 b2 =&gt; b1 -&gt; b2</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A HREF="#t%3AAnd"
>And</A
> b1 b2 b3 | b1 b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3A%26%26"
>(&amp;&amp;)</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A HREF="#t%3AOr"
>Or</A
> b1 b2 b3 | b1 b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3A%7C%7C"
>(||)</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A HREF="#t%3AXor"
>Xor</A
> b1 b2 b3 | b1 b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Axor"
>xor</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A HREF="#t%3AImp"
>Imp</A
> b1 b2 b3 | b1 b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Aimp"
>imp</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A HREF="#t%3AEq"
>Eq</A
> b1 b2 b3 | b1 b2 -&gt; b3</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Aeq"
>eq</A
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
><A NAME="1"
><A NAME="1"
>Type-level boolean values
</A
></A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> BoolI b =&gt; <A NAME="t:Bool"
><A NAME="t%3ABool"
></A
></A
><B
>Bool</B
> b </TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#Bool"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Type-level Booleans
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Bool')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Bool" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
>BoolI b =&gt; <A HREF="Data-TypeLevel-Bool.html#t%3ABool"
>Bool</A
> b</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:toBool"
><A NAME="v%3AtoBool"
></A
></A
><B
>toBool</B
> :: BoolI b =&gt; b -&gt; <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
></TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#toBool"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:False"
><A NAME="t%3AFalse"
></A
></A
><B
>False</B
>  </TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#False"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>False type-level value
</TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:False')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:False" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow"
>Show</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable"
>Typeable</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>BoolI <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD9"
>D9</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD8"
>D8</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD7"
>D7</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD6"
>D6</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD5"
>D5</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD4"
>D4</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD3"
>D3</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD2"
>D2</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD1"
>D1</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>(<A HREF="Data-TypeLevel-Num-Sets.html#t%3ANat"
>Nat</A
> x, <A HREF="Data-TypeLevel-Num-Sets.html#t%3ANat"
>Nat</A
> y, <A HREF="Data-TypeLevel-Num-Ops.html#t%3ASub"
>Sub</A
> x y x', <A HREF="Data-TypeLevel-Num-Ops.html#t%3AGCD"
>GCD</A
> x' y gcd) =&gt; GCD' x y <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Num-Ops.html#t%3AGT"
>GT</A
> gcd</TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Num-Sets.html#t%3ANat"
>Nat</A
> x =&gt; GCD' x x <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Num-Ops.html#t%3AEQ"
>EQ</A
> x</TD
></TR
><TR
><TD CLASS="decl"
>(<A HREF="Data-TypeLevel-Num-Sets.html#t%3ANat"
>Nat</A
> x, <A HREF="Data-TypeLevel-Num-Sets.html#t%3ANat"
>Nat</A
> y, <A HREF="Data-TypeLevel-Num-Ops.html#t%3AGCD"
>GCD</A
> y x gcd) =&gt; GCD' x y <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Num-Ops.html#t%3ALT"
>LT</A
> gcd</TD
></TR
><TR
><TD CLASS="decl"
>(<A HREF="Data-TypeLevel-Num-Sets.html#t%3APos"
>Pos</A
> b, b <A HREF="Data-TypeLevel-Num-Ops.html#t%3A%3A%3E%3D%3A"
>:&gt;=:</A
> <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD2"
>D2</A
>, <A HREF="Data-TypeLevel-Num-Sets.html#t%3APos"
>Pos</A
> x) =&gt; LogBaseF' b x <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Num-Ops.html#t%3ALT"
>LT</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Num-Ops.html#t%3ASucc"
>Succ</A
> xi yi =&gt; Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD9"
>D9</A
> yi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD8"
>D8</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD9"
>D9</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD7"
>D7</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD8"
>D8</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD6"
>D6</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD7"
>D7</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD5"
>D5</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD6"
>D6</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD4"
>D4</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD5"
>D5</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD3"
>D3</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD4"
>D4</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD2"
>D2</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD3"
>D3</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD1"
>D1</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD2"
>D2</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>Succ' xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> xi <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD1"
>D1</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Num-Sets.html#t%3APos"
>Pos</A
> x =&gt; IsZero (<A HREF="Data-TypeLevel-Num-Reps.html#t%3A%3A%2A"
>:*</A
> x d) <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:false"
><A NAME="v%3Afalse"
></A
></A
><B
>false</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#false"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>False value-level reflecting function
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:True"
><A NAME="t%3ATrue"
></A
></A
><B
>True</B
>  </TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#True"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>True type-level value
</TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:True')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:True" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow"
>Show</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable"
>Typeable</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
>BoolI <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
>IsZero <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Num-Sets.html#t%3ANat"
>Nat</A
> x =&gt; GCD' x <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> cmp <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
></TD
></TR
><TR
><TD CLASS="decl"
>(<A HREF="Data-TypeLevel-Num-Sets.html#t%3APos"
>Pos</A
> b, b <A HREF="Data-TypeLevel-Num-Ops.html#t%3A%3A%3E%3D%3A"
>:&gt;=:</A
> <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD2"
>D2</A
>) =&gt; LogBaseF' b b <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD1"
>D1</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Num-Ops.html#t%3AEQ"
>EQ</A
></TD
></TR
><TR
><TD CLASS="decl"
>Failure (PredecessorOfZeroError x) =&gt; Succ' (x, x) (x, x) <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> <A HREF="Data-TypeLevel-Num-Reps.html#t%3AD0"
>D0</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:true"
><A NAME="v%3Atrue"
></A
></A
><B
>true</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#true"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>True value-level reflecting function
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:reifyBool"
><A NAME="v%3AreifyBool"
></A
></A
><B
>reifyBool</B
> ::  <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool"
>Bool</A
> -&gt; (<SPAN CLASS="keyword"
>forall</SPAN
> b. <A HREF="Data-TypeLevel-Bool.html#t%3ABool"
>Bool</A
> b =&gt; b -&gt; r) -&gt; r</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#reifyBool"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>Reification function. In CPS style (best possible solution)
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
><A NAME="2"
><A NAME="2"
>Type-level boolean operations
</A
></A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2) =&gt; <A NAME="t:Not"
><A NAME="t%3ANot"
></A
></A
><B
>Not</B
> b1 b2 | b1 -&gt; b2, b2 -&gt; b1</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#Not"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Boolean negation type-level relation. <TT
>Not b1 b2</TT
> establishes that
 <TT
>not b1 = b2</TT
>
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Not')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Not" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:not"
><A NAME="v%3Anot"
></A
></A
><B
>not</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
> b1 b2 =&gt; b1 -&gt; b2</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#not"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>value-level reflection function for the <TT
><A HREF="Data-TypeLevel-Bool.html#t%3ANot"
>Not</A
></TT
> type-level relation
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A NAME="t:And"
><A NAME="t%3AAnd"
></A
></A
><B
>And</B
> b1 b2 b3 | b1 b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#And"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
><TT
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
></TT
> type-level relation. <TT
>And b1 b2 b3</TT
> establishes that
   <TT
>b1 &amp;&amp; b2 = b3</TT
>
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:And')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:And" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:&&"
><A NAME="v%3A%26%26"
></A
></A
><B
>(&amp;&amp;)</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#%26%26"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>value-level reflection function for the <TT
><A HREF="Data-TypeLevel-Bool.html#t%3AAnd"
>And</A
></TT
> type-level relation
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A NAME="t:Or"
><A NAME="t%3AOr"
></A
></A
><B
>Or</B
> b1 b2 b3 | b1 b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#Or"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Or type-level relation. <TT
>Or b1 b2 b3</TT
> establishes that
   <TT
>b1 || b2 = b3</TT
>
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Or')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Or" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:||"
><A NAME="v%3A%7C%7C"
></A
></A
><B
>(||)</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#%7C%7C"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>value-level reflection function for the <TT
><A HREF="Data-TypeLevel-Bool.html#t%3AOr"
>Or</A
></TT
> type-level relation
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A NAME="t:Xor"
><A NAME="t%3AXor"
></A
></A
><B
>Xor</B
> b1 b2 b3 | b1 b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#Xor"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Exclusive or type-level relation. <TT
>Xor b1 b2 b3</TT
> establishes that
   <TT
>xor b1 b2 = b3</TT
>
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Xor')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Xor" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:xor"
><A NAME="v%3Axor"
></A
></A
><B
>xor</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#xor"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>value-level reflection function for the <TT
><A HREF="Data-TypeLevel-Bool.html#t%3AXor"
>Xor</A
></TT
> type-level relation
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A NAME="t:Imp"
><A NAME="t%3AImp"
></A
></A
><B
>Imp</B
> b1 b2 b3 | b1 b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#Imp"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Implication type-level relation. <TT
>Imp b1 b2 b3</TT
> establishes that
 <TT
>b1 =&gt;b2 = b3</TT
>
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Imp')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Imp" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:imp"
><A NAME="v%3Aimp"
></A
></A
><B
>imp</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AImp"
>Imp</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#imp"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>value-level reflection function for the Imp type-level relation
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><SPAN CLASS="keyword"
>class</SPAN
> (BoolI b1, BoolI b2, BoolI b3) =&gt; <A NAME="t:Eq"
><A NAME="t%3AEq"
></A
></A
><B
>Eq</B
> b1 b2 b3 | b1 b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#Eq"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Boolean equality type-level relation
</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Eq')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Eq" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
> <A HREF="Data-TypeLevel-Bool.html#t%3AFalse"
>False</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
> <A HREF="Data-TypeLevel-Bool.html#t%3ATrue"
>True</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="topdecl"
><TABLE CLASS="declbar"
><TR
><TD CLASS="declname"
><A NAME="v:eq"
><A NAME="v%3Aeq"
></A
></A
><B
>eq</B
> :: <A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
> b1 b2 b3 =&gt; b1 -&gt; b2 -&gt; b3</TD
><TD CLASS="declbut"
><A HREF="src/Data-TypeLevel-Bool.html#eq"
>Source</A
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="doc"
>value-level reflection function for the <TT
><A HREF="Data-TypeLevel-Bool.html#t%3AEq"
>Eq</A
></TT
> type-level relation
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="botbar"
>Produced by <A HREF="http://www.haskell.org/haddock/"
>Haddock</A
> version 2.6.1</TD
></TR
></TABLE
></BODY
></HTML
>