/[svn]/types/normal.mli
ViewVC logotype

Contents of /types/normal.mli

Parent Directory Parent Directory | Revision Log Revision Log


Revision 240 - (hide annotations)
Tue Jul 10 17:18:24 2007 UTC (5 years, 10 months ago) by abate
File size: 611 byte(s)
[r2003-03-14 18:11:21 by cvscast] Empty log message

Original author: cvscast
Date: 2003-03-14 18:13:42+00:00
1 abate 156 module type S =
2     sig
3     type t
4    
5     val any: t
6 abate 229 val empty: t
7 abate 156 val cup: t -> t -> t
8     val cap: t -> t -> t
9     val diff: t -> t -> t
10 abate 229 val is_empty: t -> bool
11 abate 156 end
12    
13 abate 233 type 'a bool = ('a list * 'a list) list
14 abate 156 module Make(X1 : S)(X2 : S) :
15     sig
16     type t = (X1.t * X2.t) list
17    
18     val normal: t -> t
19 abate 229 (* normalized form:
20     (t1,t2),...,(s1,s2) ==> t1 & s1 = 0
21     (t1,t2) => t1 <> 0, t2 <> 0
22     *)
23    
24 abate 233 val boolean_normal: (X1.t * X2.t) bool -> t
25 abate 229 (* return a normalized form *)
26    
27 abate 233 val boolean: (X1.t * X2.t) bool -> t
28 abate 229
29     val pi1: t -> X1.t
30 abate 240 val pi2: t -> X2.t
31 abate 229 val pi2_restricted: X1.t -> t -> X2.t
32 abate 156 end

CVS Admin">CVS Admin
ViewVC Help
Powered by ViewVC 1.1.5