Dave is big. Erin is blue. Erin is smart. Erin is young. Fiona is nice. Fiona is smart. Harry is smart. Rough things are cold. Smart, young things are rough. If Dave is nice and Dave is big then Dave is young. If Erin is blue and Erin is cold then Erin is smart. Rough, blue things are smart. All big things are nice. If something is big and cold then it is blue. Nice, young things are rough. If something is rough then it is young.
Dave is big.
("Dave" "is" "big" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is young.
("Erin" "is" "young" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Rough things are cold.
((("something" "is" "rough" "+")) -> ("something" "is" "cold" "+"))
Smart, young things are rough.
((("something" "is" "smart" "+") ("something" "is" "young" "+")) -> ("something" "is" "rough" "+"))
If Dave is nice and Dave is big then Dave is young.
((("Dave" "is" "nice" "+") ("Dave" "is" "big" "+")) -> ("Dave" "is" "young" "+"))
If Erin is blue and Erin is cold then Erin is smart.
((("Erin" "is" "blue" "+") ("Erin" "is" "cold" "+")) -> ("Erin" "is" "smart" "+"))
Rough, blue things are smart.
((("something" "is" "rough" "+") ("something" "is" "blue" "+")) -> ("something" "is" "smart" "+"))
All big things are nice.
((("something" "is" "big" "+")) -> ("something" "is" "nice" "+"))
If something is big and cold then it is blue.
((("something" "is" "big" "+") ("something" "is" "cold" "+")) -> ("something" "is" "blue" "+"))
Nice, young things are rough.
((("something" "is" "nice" "+") ("something" "is" "young" "+")) -> ("something" "is" "rough" "+"))
If something is rough then it is young.
((("something" "is" "rough" "+")) -> ("something" "is" "young" "+"))
Erin is young.
True
1
proof
[(triple4)]
("Erin" "is" "young" "+")
triple4
Erin is not young.
False
1
inv-proof
[(triple4)]
("Erin" "is" "young" "-")
triple4
Dave is nice.
True
2
proof
[(((triple1) -> rule6))]
("Dave" "is" "nice" "+")
((triple1) -> (rule6 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Erin is not rough.
False
3
inv-proof
[(((triple3 triple4) -> rule2))]
("Erin" "is" "rough" "-")
((triple3 triple4) -> (rule2 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is cold.
True
4
proof
[(((((triple3 triple4) -> rule2)) -> rule1))]
("Erin" "is" "cold" "+")
((((triple3 triple4) -> (rule2 % int2))) -> (rule1 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Dave is not young.
False
4
inv-proof
[(((((triple1) -> rule6) triple1) -> rule3))]
("Dave" "is" "young" "-")
((((triple1) -> (rule6 % int2)) triple1) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Dave is rough.
True
7
proof
[(((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8))]
("Dave" "is" "rough" "+")
((((triple1) -> (rule6 % int3)) ((((triple1) -> (rule6 % int3)) triple1) -> (rule3 % int2))) -> (rule8 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Dave is not rough.
False
7
inv-proof
[(((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8))]
("Dave" "is" "rough" "-")
((((triple1) -> (rule6 % int3)) ((((triple1) -> (rule6 % int3)) triple1) -> (rule3 % int2))) -> (rule8 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Dave is cold.
True
8
proof
[(((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1))]
("Dave" "is" "cold" "+")
((((((triple1) -> (rule6 % int4)) ((((triple1) -> (rule6 % int4)) triple1) -> (rule3 % int3))) -> (rule8 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is young.
("Dave" "is" "young" "+")
int3
Dave is nice.
("Dave" "is" "nice" "+")
int4
Dave is not cold.
False
8
inv-proof
[(((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1))]
("Dave" "is" "cold" "-")
((((((triple1) -> (rule6 % int4)) ((((triple1) -> (rule6 % int4)) triple1) -> (rule3 % int3))) -> (rule8 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is young.
("Dave" "is" "young" "+")
int3
Dave is nice.
("Dave" "is" "nice" "+")
int4
Dave is blue.
True
10
proof
[(((triple1 ((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1)) -> rule7))]
("Dave" "is" "blue" "+")
((triple1 ((((((triple1) -> (rule6 % int5)) ((((triple1) -> (rule6 % int5)) triple1) -> (rule3 % int4))) -> (rule8 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Dave is young.
("Dave" "is" "young" "+")
int4
Dave is nice.
("Dave" "is" "nice" "+")
int5
Dave is not blue.
False
10
inv-proof
[(((triple1 ((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1)) -> rule7))]
("Dave" "is" "blue" "-")
((triple1 ((((((triple1) -> (rule6 % int5)) ((((triple1) -> (rule6 % int5)) triple1) -> (rule3 % int4))) -> (rule8 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Dave is young.
("Dave" "is" "young" "+")
int4
Dave is nice.
("Dave" "is" "nice" "+")
int5
Fiona is not blue.
Unknown
inv-rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Fiona" "is" "blue" "-")
Harry is rough.
Unknown
rconc
[@3: Harry is rough.[CWA. Example of deepest failure = (rule2 <- rule9 <- rule8 <- FAIL)]]
("Harry" "is" "rough" "+")
Harry is not blue.
Unknown
inv-rconc
[@1: Harry is blue.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Harry" "is" "blue" "-")
Fiona is cold.
Unknown
rconc
[@4: Fiona is cold.[CWA. Example of deepest failure = (rule1 <- rule2 <- rule9 <- rule8 <- FAIL)]]
("Fiona" "is" "cold" "+")
Erin is not nice.
Unknown
inv-rconc
[@1: Erin is nice.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Erin" "is" "nice" "-")
Fiona is rough.
Unknown
rconc
[@3: Fiona is rough.[CWA. Example of deepest failure = (rule2 <- rule9 <- rule8 <- FAIL)]]
("Fiona" "is" "rough" "+")
Erin is not big.
Unknown
inv-random
[@0: Erin is big.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "big" "-")
Fiona is big.
Unknown
random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "+")
@0: Dave is big.[(triple1)] Erin is blue.[(triple2)] Erin is smart.[(triple3)] Erin is young.[(triple4)] Fiona is nice.[(triple5)] Fiona is smart.[(triple6)] Harry is smart.[(triple7)] @1: Dave is nice.[(((triple1) -> rule6))] Erin is rough.[(((triple3 triple4) -> rule2))] @2: Dave is young.[(((((triple1) -> rule6) triple1) -> rule3))] Erin is cold.[(((((triple3 triple4) -> rule2)) -> rule1))] @3: Dave is rough.[(((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8))] @4: Dave is cold.[(((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1))] @5: Dave is blue.[(((triple1 ((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1)) -> rule7))] @6: Dave is smart.[(((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8) ((triple1 ((((((triple1) -> rule6) ((((triple1) -> rule6) triple1) -> rule3)) -> rule8)) -> rule1)) -> rule7)) -> rule5))]
Dave is big.
("Dave" "is" "big" "+")
triple1
Erin is blue.
("Erin" "is" "blue" "+")
triple2
Erin is smart.
("Erin" "is" "smart" "+")
triple3
Erin is young.
("Erin" "is" "young" "+")
triple4
Fiona is nice.
("Fiona" "is" "nice" "+")
triple5
Fiona is smart.
("Fiona" "is" "smart" "+")
triple6
Harry is smart.
("Harry" "is" "smart" "+")
triple7
Dave is nice.
("Dave" "is" "nice" "+")
((triple1) -> (rule6 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
((triple3 triple4) -> (rule2 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
((((triple1) -> (rule6 % int2)) triple1) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
((((triple3 triple4) -> (rule2 % int2))) -> (rule1 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
((((triple1) -> (rule6 % int3)) ((((triple1) -> (rule6 % int3)) triple1) -> (rule3 % int2))) -> (rule8 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is nice.
("Dave" "is" "nice" "+")
int3
Dave is cold.
("Dave" "is" "cold" "+")
((((((triple1) -> (rule6 % int4)) ((((triple1) -> (rule6 % int4)) triple1) -> (rule3 % int3))) -> (rule8 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
Dave is young.
("Dave" "is" "young" "+")
int3
Dave is nice.
("Dave" "is" "nice" "+")
int4
Dave is blue.
("Dave" "is" "blue" "+")
((triple1 ((((((triple1) -> (rule6 % int5)) ((((triple1) -> (rule6 % int5)) triple1) -> (rule3 % int4))) -> (rule8 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Dave is young.
("Dave" "is" "young" "+")
int4
Dave is nice.
("Dave" "is" "nice" "+")
int5
Dave is smart.
("Dave" "is" "smart" "+")
((((((triple1) -> (rule6 % int6)) ((((triple1) -> (rule6 % int6)) triple1) -> (rule3 % int5))) -> (rule8 % int4)) ((triple1 ((((((triple1) -> (rule6 % int6)) ((((triple1) -> (rule6 % int6)) triple1) -> (rule3 % int5))) -> (rule8 % int4))) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
int3
Dave is rough.
("Dave" "is" "rough" "+")
int4
Dave is young.
("Dave" "is" "young" "+")
int5
Dave is nice.
("Dave" "is" "nice" "+")
int6