+++ /dev/null
-(*
- ||M|| This file is part of HELM, an Hypertextual, Electronic
- ||A|| Library of Mathematics, developed at the Computer Science
- ||T|| Department, University of Bologna, Italy.
- ||I||
- ||T|| HELM is free software; you can redistribute it and/or
- ||A|| modify it under the terms of the GNU General Public License
- \ / version 2 or (at your option) any later version.
- \ / This software is distributed as is, NO WARRANTY.
- V_______________________________________________________________ *)
-
-module L = List
-module U = NUri
-module C = Cps
-module E = Entity
-module G = Options
-
-type csys = {
- uri: E.uri;
- mutable tp : int list;
- mutable t1 : int list;
- mutable tn : (int * int) list;
-}
-
-let mark a = E.mark C.err C.start a
-
-(* interface functions ******************************************************)
-
-let init () = {
- uri = U.uri_of_string (G.get_baseuri ());
- tp = []; t1 = []; tn = []
-}
-
-let add_nonzero s a =
- if !G.si && !G.cc then
- let i = abs (mark a) in
- if L.mem i s.tp then () else s.tp <- i :: s.tp
- else ()
-
-let add_zero s a =
- if !G.si && !G.cc then
- let i = abs (mark a) in
- if L.mem i s.t1 then () else s.t1 <- i :: s.t1
- else ()
-
-let add_equal s xa ia =
- if !G.si && !G.cc then
- let i = abs (mark xa), abs (mark ia) in
- if L.mem i s.tn then () else s.tn <- i :: s.tn
- else ()