Skip to content
Snippets Groups Projects
cool-testsuite.ml 1.1 KiB
Newer Older
open CoolUtils
open Testsuite
module CF = CoAlgFormula
module CR = CoAlgReasoner
module CM = CoAlgMisc
module L = List

let k   = [| (CM.MultiModalK,  [0]) |]
let kd  = [| (CM.MultiModalKD, [0]) |]
let cl  = [| (CM.CoalitionLogic, [0]) |]
let gml = [| (CM.GML, [0]) |]

(* ============ multi modal K ============ *)
let k_testcases: satCheck list =
    let c a b = (a,k,b) in
    [ c Sat   "True"
    ; c Unsat "False"
    ; c ParseError  "{Fsdf"
    (*; c ParseError  "Fsdf}" *)
Thorsten Wißmann's avatar
Thorsten Wißmann committed
    ; c Unsat "<R> True & [R] False"
    ; c Unsat "C |- <R> ~C"
    ; c Sat   "C |- [R] ~C"
    ]

let kd_testcases =
    let c a b = (a,kd,b) in
    [ c Sat   "True"
    ; c Unsat "False"
    ; c ParseError  "{Fsdf"
    (*; c ParseError  "Fsdf}" *)
    ; c Unsat "<R> True & [R] False"
    ; c Unsat "C |- <R> ~C"
    ; c Unsat "C |- [R] ~C"
    ]

let testcases =
    let c name table = (name,table) in
    [ c "K"  k_testcases
    ; c "KD" kd_testcases
let main =
Thorsten Wißmann's avatar
Thorsten Wißmann committed
    foreach_l testcases (fun (name,table) ->
        Printf.printf "\n==== Testing logic %s ====\n" name;
        foreach_l table runSatCheckVerbose