method init : unit = (
destroy solverLabel;
solverLabel <- Label.create ~text:"Solver : " ~height:2 frame2;
destroy lst;
lst <- Listbox.create ~height:2 ~background:selcol frame2;
destroy depthLabel;
depthLabel <- Label.create ~text:"Depth : " ~height:2 frame3;
destroy depthEntry;
depthEntry <- Entry.create ~width:20 ~background:selcol frame3;
Listbox.insert lst ~index:`End ~texts:["Chaff"; "SIM" ; "SATO"];
Listbox.selection_set lst ~first:(`Num 0) ~last:(`Num 0);
Checkbutton.configure abstraction ~command:(fun () -> (if abstractionString=" --mutex=0 " then abstractionString <- " --mutex=1 " else abstractionString <- " --mutex=0 "));
Checkbutton.configure compound ~command:(fun () -> (if compoundString=" --typed_model=strongly " then compoundString <- " --typed_model=yes " else compoundString <- " --typed_model=strongly "));
Checkbutton.configure optimized ~command:(fun () -> (if optimizedString=" --oi=false " then optimizedString <- " --oi=true " else optimizedString <- " --oi=false "));
pack ~side:`Top [optionFrame];
pack ~side:`Top [optionLabel];
pack ~side:`Top [frame2];
pack ~side:`Left [solverLabel];
pack ~side:`Right [lst];
pack ~side:`Top [frame3];
pack ~side:`Left [depthLabel];
pack ~side:`Right [depthEntry];
pack ~side:`Top [abstraction];
pack ~side:`Top [compound];
pack ~side:`Top [optimized];)