(***********************************************************************)
(*
- Time-stamp: <Last modified on 2013-03-05 18:25:03 CET by Kim Nguyen>
+ Time-stamp: <Last modified on 2013-03-08 16:24:41 CET by Kim Nguyen>
*)
INCLUDE "utils.ml"
(* create a new state and add it to the todo queue *)
let nq = State.make () in
auto.states <- StateSet.add nq auto.states;
-(* if not (StateSet.mem q auto.bottom_states) then
+ if not (StateSet.mem q auto.bottom_states) then
auto.bottom_states <- StateSet.add nq auto.bottom_states;
if not (StateSet.mem q auto.top_states) then
- auto.top_states <- StateSet.add nq auto.top_states; *)
+ auto.top_states <- StateSet.add nq auto.top_states;
Hashtbl.add memo_state (q, false) nq;
Queue.add (q, false) todo; nq
in
let nq = if b then q else
let nq = State.make () in
auto.states <- StateSet.add nq auto.states;
-(* if not (StateSet.mem q auto.bottom_states) then
+ if not (StateSet.mem q auto.bottom_states) then
auto.bottom_states <- StateSet.add nq auto.bottom_states;
if not (StateSet.mem q auto.top_states) then
- auto.top_states <- StateSet.add nq auto.top_states; *)
+ auto.top_states <- StateSet.add nq auto.top_states;
nq
in
Hashtbl.add memo_state key nq; nq
(***********************************************************************)
(*
- Time-stamp: <Last modified on 2013-03-05 18:35:19 CET by Kim Nguyen>
+ Time-stamp: <Last modified on 2013-03-08 16:25:12 CET by Kim Nguyen>
*)
INCLUDE "utils.ml"
let states0 = get cache tree node in
let tag = T.tag tree node in
let trans0 = Ata.get_trans auto auto.Ata.states tag in
- let parent_states = (*if parent == T.nil then auto.Ata.top_states else*) get cache tree parent in
- let fc_states = (*if fc == T.nil then auto.Ata.bottom_states else*) get cache tree fc in
- let ns_states = (*if ns == T.nil then auto.Ata.bottom_states else*) get cache tree ns in
+ let parent_states = if parent == T.nil then auto.Ata.top_states else get cache tree parent in
+ let fc_states = if fc == T.nil then auto.Ata.bottom_states else get cache tree fc in
+ let ns_states = if ns == T.nil then auto.Ata.bottom_states else get cache tree ns in
let is_root = parent == T.nil in
let ctx0 =
if is_left then