Charlie is nice. Dave is smart. Fiona is quiet. Harry is blue. Harry is cold. Harry is green. Harry is quiet. Young, cold people are green. Quiet, cold people are green. Young people are smart. All quiet people are green. If someone is young and green then they are smart. If Fiona is cold then Fiona is young. If someone is green then they are nice. If Fiona is nice then Fiona is cold.
Charlie is nice.
("Charlie" "is" "nice" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Young, cold people are green.
((("someone" "is" "young" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
Quiet, cold people are green.
((("someone" "is" "quiet" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
Young people are smart.
((("someone" "is" "young" "+")) -> ("someone" "is" "smart" "+"))
All quiet people are green.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "green" "+"))
If someone is young and green then they are smart.
((("someone" "is" "young" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "smart" "+"))
If Fiona is cold then Fiona is young.
((("Fiona" "is" "cold" "+")) -> ("Fiona" "is" "young" "+"))
If someone is green then they are nice.
((("someone" "is" "green" "+")) -> ("someone" "is" "nice" "+"))
If Fiona is nice then Fiona is cold.
((("Fiona" "is" "nice" "+")) -> ("Fiona" "is" "cold" "+"))
Fiona is quiet.
True
1
proof
[(triple3)]
("Fiona" "is" "quiet" "+")
triple3
Charlie is not nice.
False
1
inv-proof
[(triple1)]
("Charlie" "is" "nice" "-")
triple1
Harry is nice.
True
2
proof
[(((triple6) -> rule7) OR ((((triple7) -> rule4)) -> rule7) OR ((((triple7 triple5) -> rule2)) -> rule7))]
("Harry" "is" "nice" "+")
((triple6) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
((((triple7 triple5) -> (rule2 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Fiona is not green.
False
2
inv-proof
[(((triple3) -> rule4))]
("Fiona" "is" "green" "-")
((triple3) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is nice.
True
3
proof
[(((((triple3) -> rule4)) -> rule7))]
("Fiona" "is" "nice" "+")
((((triple3) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is not nice.
False
3
inv-proof
[(((((triple3) -> rule4)) -> rule7))]
("Fiona" "is" "nice" "-")
((((triple3) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is cold.
True
4
proof
[(((((((triple3) -> rule4)) -> rule7)) -> rule8))]
("Fiona" "is" "cold" "+")
((((((triple3) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is not cold.
False
4
inv-proof
[(((((((triple3) -> rule4)) -> rule7)) -> rule8))]
("Fiona" "is" "cold" "-")
((((((triple3) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is young.
True
5
proof
[(((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6))]
("Fiona" "is" "young" "+")
((((((((triple3) -> (rule4 % int4))) -> (rule7 % int3))) -> (rule8 % int2))) -> (rule6 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
Fiona is not young.
False
5
inv-proof
[(((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6))]
("Fiona" "is" "young" "-")
((((((((triple3) -> (rule4 % int4))) -> (rule7 % int3))) -> (rule8 % int2))) -> (rule6 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
Fiona is smart.
True
6
proof
[(((((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6)) -> rule3) OR ((((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6) ((triple3) -> rule4)) -> rule5))]
("Fiona" "is" "smart" "+")
((((((((((triple3) -> (rule4 % int5))) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is green.
("Fiona" "is" "green" "+")
int5
((((((((((triple3) -> (rule4 % int5))) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule6 % int2)) ((triple3) -> (rule4 % int5))) -> (rule5 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is green.
("Fiona" "is" "green" "+")
int5
Fiona is not smart.
False
6
inv-proof
[(((((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6)) -> rule3) OR ((((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6) ((triple3) -> rule4)) -> rule5))]
("Fiona" "is" "smart" "-")
((((((((((triple3) -> (rule4 % int5))) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is green.
("Fiona" "is" "green" "+")
int5
((((((((((triple3) -> (rule4 % int5))) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule6 % int2)) ((triple3) -> (rule4 % int5))) -> (rule5 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is green.
("Fiona" "is" "green" "+")
int5
Charlie is not green.
Unknown
inv-rconc
[@1: Charlie is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Charlie" "is" "green" "-")
Dave is nice.
Unknown
rconc
[@2: Dave is nice.[CWA. Example of deepest failure = (rule7 <- rule1 <- FAIL)]]
("Dave" "is" "nice" "+")
Harry is not smart.
Unknown
inv-rconc
[@1: Harry is smart.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Harry" "is" "smart" "-")
Dave is green.
Unknown
rconc
[@1: Dave is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "green" "+")
Charlie is not smart.
Unknown
inv-rconc
[@1: Charlie is smart.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "smart" "-")
Charlie is young.
Unknown
random
[@0: Charlie is young.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "young" "+")
Dave is not young.
Unknown
inv-random
[@0: Dave is young.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "young" "-")
Dave is blue.
Unknown
random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "+")
Fiona is not blue.
Unknown
inv-random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "-")
Dave is cold.
Unknown
random
[@0: Dave is cold.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "cold" "+")
Charlie is not cold.
Unknown
inv-random
[@0: Charlie is cold.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "cold" "-")
Dave is quiet.
Unknown
random
[@0: Dave is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "quiet" "+")
@0: Charlie is nice.[(triple1)] Dave is smart.[(triple2)] Fiona is quiet.[(triple3)] Harry is blue.[(triple4)] Harry is cold.[(triple5)] Harry is green.[(triple6 OR ((triple7) -> rule4) OR ((triple7 triple5) -> rule2))] Harry is quiet.[(triple7)] @1: Fiona is green.[(((triple3) -> rule4))] Harry is nice.[(((triple6) -> rule7) OR ((((triple7) -> rule4)) -> rule7) OR ((((triple7 triple5) -> rule2)) -> rule7))] @2: Fiona is nice.[(((((triple3) -> rule4)) -> rule7))] @3: Fiona is cold.[(((((((triple3) -> rule4)) -> rule7)) -> rule8))] @4: Fiona is young.[(((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6))] @5: Fiona is smart.[(((((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6)) -> rule3) OR ((((((((((triple3) -> rule4)) -> rule7)) -> rule8)) -> rule6) ((triple3) -> rule4)) -> rule5))]
Charlie is nice.
("Charlie" "is" "nice" "+")
triple1
Dave is smart.
("Dave" "is" "smart" "+")
triple2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple3
Harry is blue.
("Harry" "is" "blue" "+")
triple4
Harry is cold.
("Harry" "is" "cold" "+")
triple5
Harry is green.
("Harry" "is" "green" "+")
triple6
((triple7) -> (rule4 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
((triple7 triple5) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
triple7
Fiona is green.
("Fiona" "is" "green" "+")
((triple3) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
((triple6) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
((((triple7 triple5) -> (rule2 % int2))) -> (rule7 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
((((triple3) -> (rule4 % int2))) -> (rule7 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
((((((triple3) -> (rule4 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is young.
("Fiona" "is" "young" "+")
((((((((triple3) -> (rule4 % int4))) -> (rule7 % int3))) -> (rule8 % int2))) -> (rule6 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
Fiona is smart.
("Fiona" "is" "smart" "+")
((((((((((triple3) -> (rule4 % int5))) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is green.
("Fiona" "is" "green" "+")
int5
((((((((((triple3) -> (rule4 % int5))) -> (rule7 % int4))) -> (rule8 % int3))) -> (rule6 % int2)) ((triple3) -> (rule4 % int5))) -> (rule5 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is green.
("Fiona" "is" "green" "+")
int5