Dave is cold. Dave is round. Erin is green. Fiona is smart. Gary is not cold. Gary is green. Gary is quiet. If something is nice then it is green. If something is nice and white then it is green. If something is cold and nice then it is smart. Round things are nice. White things are nice. If something is cold and not white then it is nice. All quiet, nice things are cold. If something is smart then it is round. All green, round things are quiet.
Dave is cold.
("Dave" "is" "cold" "+")
Dave is round.
("Dave" "is" "round" "+")
Erin is green.
("Erin" "is" "green" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is not cold.
("Gary" "is" "cold" "-")
Gary is green.
("Gary" "is" "green" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
If something is nice then it is green.
((("something" "is" "nice" "+")) -> ("something" "is" "green" "+"))
If something is nice and white then it is green.
((("something" "is" "nice" "+") ("something" "is" "white" "+")) -> ("something" "is" "green" "+"))
If something is cold and nice then it is smart.
((("something" "is" "cold" "+") ("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
Round things are nice.
((("something" "is" "round" "+")) -> ("something" "is" "nice" "+"))
White things are nice.
((("something" "is" "white" "+")) -> ("something" "is" "nice" "+"))
If something is cold and not white then it is nice.
((("something" "is" "cold" "+") ("something" "is" "white" "~")) -> ("something" "is" "nice" "+"))
All quiet, nice things are cold.
((("something" "is" "quiet" "+") ("something" "is" "nice" "+")) -> ("something" "is" "cold" "+"))
If something is smart then it is round.
((("something" "is" "smart" "+")) -> ("something" "is" "round" "+"))
All green, round things are quiet.
((("something" "is" "green" "+") ("something" "is" "round" "+")) -> ("something" "is" "quiet" "+"))
Erin is green.
True
1
proof
[(triple3)]
("Erin" "is" "green" "+")
triple3
Gary is cold.
False
1
inv-proof
[(triple5)]
("Gary" "is" "cold" "+")
triple5
Fiona is round.
True
2
proof
[(((triple4) -> rule8))]
("Fiona" "is" "round" "+")
((triple4) -> (rule8 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is not round.
False
2
inv-proof
[(((triple4) -> rule8))]
("Fiona" "is" "round" "-")
((triple4) -> (rule8 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Dave is green.
True
3
proof
[(((((triple2) -> rule4)) -> rule1))]
("Dave" "is" "green" "+")
((((triple2) -> (rule4 % int2))) -> (rule1 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Fiona is not nice.
False
3
inv-proof
[(((((triple4) -> rule8)) -> rule4))]
("Fiona" "is" "nice" "-")
((((triple4) -> (rule8 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Dave is quiet.
True
5
proof
[(((((((triple2) -> rule4)) -> rule1) triple2) -> rule9))]
("Dave" "is" "quiet" "+")
((((((triple2) -> (rule4 % int3))) -> (rule1 % int2)) triple2) -> (rule9 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Fiona is not green.
False
4
inv-proof
[(((((((triple4) -> rule8)) -> rule4)) -> rule1))]
("Fiona" "is" "green" "-")
((((((triple4) -> (rule8 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is quiet.
True
7
proof
[(((((((((triple4) -> rule8)) -> rule4)) -> rule1) ((triple4) -> rule8)) -> rule9))]
("Fiona" "is" "quiet" "+")
((((((((triple4) -> (rule8 % int4))) -> (rule4 % int3))) -> (rule1 % int2)) ((triple4) -> (rule8 % int4))) -> (rule9 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is not quiet.
False
7
inv-proof
[(((((((((triple4) -> rule8)) -> rule4)) -> rule1) ((triple4) -> rule8)) -> rule9))]
("Fiona" "is" "quiet" "-")
((((((((triple4) -> (rule8 % int4))) -> (rule4 % int3))) -> (rule1 % int2)) ((triple4) -> (rule8 % int4))) -> (rule9 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is cold.
True
11
proof
[(((((((((((triple4) -> rule8)) -> rule4)) -> rule1) ((triple4) -> rule8)) -> rule9) ((((triple4) -> rule8)) -> rule4)) -> rule7))]
("Fiona" "is" "cold" "+")
((((((((((triple4) -> (rule8 % int5))) -> (rule4 % int4))) -> (rule1 % int3)) ((triple4) -> (rule8 % int5))) -> (rule9 % int2)) ((((triple4) -> (rule8 % int5))) -> (rule4 % int4))) -> (rule7 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is round.
("Fiona" "is" "round" "+")
int5
Fiona is not cold.
False
11
inv-proof
[(((((((((((triple4) -> rule8)) -> rule4)) -> rule1) ((triple4) -> rule8)) -> rule9) ((((triple4) -> rule8)) -> rule4)) -> rule7))]
("Fiona" "is" "cold" "-")
((((((((((triple4) -> (rule8 % int5))) -> (rule4 % int4))) -> (rule1 % int3)) ((triple4) -> (rule8 % int5))) -> (rule9 % int2)) ((((triple4) -> (rule8 % int5))) -> (rule4 % int4))) -> (rule7 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is round.
("Fiona" "is" "round" "+")
int5
Erin is not cold.
Unknown
inv-rconc
[@4: Erin is cold.[CWA. Example of deepest failure = (rule7 <- rule9 <- rule8 <- rule3 <- FAIL)]]
("Erin" "is" "cold" "-")
Gary is nice.
Unknown
rconc
[@3: Gary is nice.[CWA. Example of deepest failure = (rule4 <- rule8 <- rule3 <- FAIL)]]
("Gary" "is" "nice" "+")
Gary is not round.
Unknown
inv-rconc
[@2: Gary is round.[CWA. Example of deepest failure = (rule8 <- rule3 <- FAIL)]]
("Gary" "is" "round" "-")
Erin is nice.
Unknown
rconc
[@4: Erin is nice.[CWA. Example of deepest failure = (rule4 <- rule8 <- rule3 <- rule5 <- FAIL)]]
("Erin" "is" "nice" "+")
Erin is not round.
Unknown
inv-rconc
[@3: Erin is round.[CWA. Example of deepest failure = (rule8 <- rule3 <- rule4 <- FAIL)]]
("Erin" "is" "round" "-")
Erin is quiet.
Unknown
rconc
[@4: Erin is quiet.[CWA. Example of deepest failure = (rule9 <- rule8 <- rule3 <- rule7 <- FAIL)]]
("Erin" "is" "quiet" "+")
Dave is not white.
Unknown
inv-random
[@0: Dave is white.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "white" "-")
Fiona is white.
Unknown
random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "+")
Gary is not white.
Unknown
inv-random
[@0: Gary is white.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "white" "-")
Erin is white.
Unknown
random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "+")
@0: Dave is cold.[(triple1 OR ((((((((triple2) -> rule4)) -> rule1) triple2) -> rule9) ((triple2) -> rule4)) -> rule7))] Dave is round.[(triple2)] Erin is green.[(triple3)] Fiona is smart.[(triple4)] Gary is green.[(triple6)] Gary is not cold.[(triple5)] Gary is quiet.[(triple7)] @1: Dave is nice.[(((triple2) -> rule4))] Fiona is round.[(((triple4) -> rule8))] @2: Dave is green.[(((((triple2) -> rule4)) -> rule1))] Dave is smart.[(((triple1 ((triple2) -> rule4)) -> rule3) OR ((((((((((triple2) -> rule4)) -> rule1) triple2) -> rule9) ((triple2) -> rule4)) -> rule7) ((triple2) -> rule4)) -> rule3))] Fiona is nice.[(((((triple4) -> rule8)) -> rule4))] @3: Dave is quiet.[(((((((triple2) -> rule4)) -> rule1) triple2) -> rule9))] Fiona is green.[(((((((triple4) -> rule8)) -> rule4)) -> rule1))] @4: Fiona is quiet.[(((((((((triple4) -> rule8)) -> rule4)) -> rule1) ((triple4) -> rule8)) -> rule9))] @5: Fiona is cold.[(((((((((((triple4) -> rule8)) -> rule4)) -> rule1) ((triple4) -> rule8)) -> rule9) ((((triple4) -> rule8)) -> rule4)) -> rule7))]
Dave is cold.
("Dave" "is" "cold" "+")
triple1
((((((((triple2) -> (rule4 % int4))) -> (rule1 % int3)) triple2) -> (rule9 % int2)) ((triple2) -> (rule4 % int4))) -> (rule7 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is nice.
("Dave" "is" "nice" "+")
int4
Dave is round.
("Dave" "is" "round" "+")
triple2
Erin is green.
("Erin" "is" "green" "+")
triple3
Fiona is smart.
("Fiona" "is" "smart" "+")
triple4
Gary is green.
("Gary" "is" "green" "+")
triple6
Gary is not cold.
("Gary" "is" "cold" "-")
triple5
Gary is quiet.
("Gary" "is" "quiet" "+")
triple7
Dave is nice.
("Dave" "is" "nice" "+")
((triple2) -> (rule4 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
((triple4) -> (rule8 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
((((triple2) -> (rule4 % int2))) -> (rule1 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is smart.
("Dave" "is" "smart" "+")
((triple1 ((triple2) -> (rule4 % int2))) -> (rule3 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
((((((((((triple2) -> (rule4 % int5))) -> (rule1 % int4)) triple2) -> (rule9 % int3)) ((triple2) -> (rule4 % int5))) -> (rule7 % int2)) ((triple2) -> (rule4 % int5))) -> (rule3 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
int4
Dave is nice.
("Dave" "is" "nice" "+")
int5
Fiona is nice.
("Fiona" "is" "nice" "+")
((((triple4) -> (rule8 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
((((((triple2) -> (rule4 % int3))) -> (rule1 % int2)) triple2) -> (rule9 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
((((((triple4) -> (rule8 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
int3
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((((((((triple4) -> (rule8 % int4))) -> (rule4 % int3))) -> (rule1 % int2)) ((triple4) -> (rule8 % int4))) -> (rule9 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is round.
("Fiona" "is" "round" "+")
int4
Fiona is cold.
("Fiona" "is" "cold" "+")
((((((((((triple4) -> (rule8 % int5))) -> (rule4 % int4))) -> (rule1 % int3)) ((triple4) -> (rule8 % int5))) -> (rule9 % int2)) ((((triple4) -> (rule8 % int5))) -> (rule4 % int4))) -> (rule7 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is round.
("Fiona" "is" "round" "+")
int5