Charlie is cold. If something is cold and not kind then it is not green. Round things are not green. All quiet, cold things are blue. If something is kind and round then it is not quiet. Red things are round. Red things are round. If something is cold then it is red. Round things are red.
Charlie is cold.
("Charlie" "is" "cold" "+")
If something is cold and not kind then it is not green.
((("something" "is" "cold" "+") ("something" "is" "kind" "~")) -> ("something" "is" "green" "-"))
Round things are not green.
((("something" "is" "round" "+")) -> ("something" "is" "green" "-"))
All quiet, cold things are blue.
((("something" "is" "quiet" "+") ("something" "is" "cold" "+")) -> ("something" "is" "blue" "+"))
If something is kind and round then it is not quiet.
((("something" "is" "kind" "+") ("something" "is" "round" "+")) -> ("something" "is" "quiet" "-"))
Red things are round.
((("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
Red things are round.
((("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
If something is cold then it is red.
((("something" "is" "cold" "+")) -> ("something" "is" "red" "+"))
Round things are red.
((("something" "is" "round" "+")) -> ("something" "is" "red" "+"))
Charlie is cold.
True
1
proof
[(triple1)]
("Charlie" "is" "cold" "+")
triple1
Charlie is not cold.
False
1
inv-proof
[(triple1)]
("Charlie" "is" "cold" "-")
triple1
Charlie is red.
True
2
proof
[(((triple1) -> rule7))]
("Charlie" "is" "red" "+")
((triple1) -> (rule7 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is not red.
False
2
inv-proof
[(((triple1) -> rule7))]
("Charlie" "is" "red" "-")
((triple1) -> (rule7 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
True
3
proof
[(((((triple1) -> rule7)) -> rule5) OR ((((triple1) -> rule7)) -> rule6))]
("Charlie" "is" "round" "+")
((((triple1) -> (rule7 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
((((triple1) -> (rule7 % int2))) -> (rule6 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not round.
False
3
inv-proof
[(((((triple1) -> rule7)) -> rule5) OR ((((triple1) -> rule7)) -> rule6))]
("Charlie" "is" "round" "-")
((((triple1) -> (rule7 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
((((triple1) -> (rule7 % int2))) -> (rule6 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not green.
True
4
proof
[(((((((triple1) -> rule7)) -> rule5)) -> rule2) OR ((((((triple1) -> rule7)) -> rule6)) -> rule2))]
("Charlie" "is" "green" "-")
((((((triple1) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Charlie is not green.
("Charlie" "is" "green" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
((((((triple1) -> (rule7 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is not green.
("Charlie" "is" "green" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
Charlie is green.
False
4
inv-proof
[(((((((triple1) -> rule7)) -> rule5)) -> rule2) OR ((((((triple1) -> rule7)) -> rule6)) -> rule2))]
("Charlie" "is" "green" "+")
((((((triple1) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Charlie is not green.
("Charlie" "is" "green" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
((((((triple1) -> (rule7 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is not green.
("Charlie" "is" "green" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
Charlie is not blue.
Unknown
inv-rconc
[@1: Charlie is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "blue" "-")
Charlie is kind.
Unknown
random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "+")
@0: Charlie is cold.[(triple1)] @1: Charlie is red.[(((triple1) -> rule7))] @2: Charlie is round.[(((((triple1) -> rule7)) -> rule5) OR ((((triple1) -> rule7)) -> rule6))] @3: Charlie is not green.[(((((((triple1) -> rule7)) -> rule5)) -> rule2) OR ((((((triple1) -> rule7)) -> rule6)) -> rule2))]
Charlie is cold.
("Charlie" "is" "cold" "+")
triple1
Charlie is red.
("Charlie" "is" "red" "+")
((triple1) -> (rule7 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
((((triple1) -> (rule7 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
((((triple1) -> (rule7 % int2))) -> (rule6 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is not green.
("Charlie" "is" "green" "-")
((((((triple1) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Charlie is not green.
("Charlie" "is" "green" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
((((((triple1) -> (rule7 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is not green.
("Charlie" "is" "green" "-")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3