Anne is red. Anne is white. Bob is blue. Bob is red. Fiona is big. Fiona is blue. Harry is big. Harry is not smart. Harry is white. Harry is not young. If something is white and young then it is smart. Green, smart things are not red. Red, smart things are not blue. White, blue things are green. If Fiona is green then Fiona is young. If something is green and not big then it is young. If something is red then it is not young. If Anne is not big then Anne is green. If something is blue then it is white.
Anne is red.
("Anne" "is" "red" "+")
Anne is white.
("Anne" "is" "white" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is red.
("Bob" "is" "red" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is not smart.
("Harry" "is" "smart" "-")
Harry is white.
("Harry" "is" "white" "+")
Harry is not young.
("Harry" "is" "young" "-")
If something is white and young then it is smart.
((("something" "is" "white" "+") ("something" "is" "young" "+")) -> ("something" "is" "smart" "+"))
Green, smart things are not red.
((("something" "is" "green" "+") ("something" "is" "smart" "+")) -> ("something" "is" "red" "-"))
Red, smart things are not blue.
((("something" "is" "red" "+") ("something" "is" "smart" "+")) -> ("something" "is" "blue" "-"))
White, blue things are green.
((("something" "is" "white" "+") ("something" "is" "blue" "+")) -> ("something" "is" "green" "+"))
If Fiona is green then Fiona is young.
((("Fiona" "is" "green" "+")) -> ("Fiona" "is" "young" "+"))
If something is green and not big then it is young.
((("something" "is" "green" "+") ("something" "is" "big" "~")) -> ("something" "is" "young" "+"))
If something is red then it is not young.
((("something" "is" "red" "+")) -> ("something" "is" "young" "-"))
If Anne is not big then Anne is green.
((("Anne" "is" "big" "~")) -> ("Anne" "is" "green" "+"))
If something is blue then it is white.
((("something" "is" "blue" "+")) -> ("something" "is" "white" "+"))
Harry is not smart.
True
1
proof
[(triple8)]
("Harry" "is" "smart" "-")
triple8
Harry is smart.
False
1
inv-proof
[(triple8)]
("Harry" "is" "smart" "+")
triple8
Bob is not young.
True
2
proof
[(((triple4) -> rule7))]
("Bob" "is" "young" "-")
((triple4) -> (rule7 % int1))
Bob is not young.
("Bob" "is" "young" "-")
int1
Fiona is not white.
False
2
inv-proof
[(((triple6) -> rule9))]
("Fiona" "is" "white" "-")
((triple6) -> (rule9 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Bob is green.
True
4
proof
[(((((triple3) -> rule9) triple3) -> rule4))]
("Bob" "is" "green" "+")
((((triple3) -> (rule9 % int2)) triple3) -> (rule4 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Fiona is not green.
False
4
inv-proof
[(((((triple6) -> rule9) triple6) -> rule4))]
("Fiona" "is" "green" "-")
((((triple6) -> (rule9 % int2)) triple6) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is young.
True
5
proof
[(((((((triple6) -> rule9) triple6) -> rule4)) -> rule5))]
("Fiona" "is" "young" "+")
((((((triple6) -> (rule9 % int3)) triple6) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is not young.
False
5
inv-proof
[(((((((triple6) -> rule9) triple6) -> rule4)) -> rule5))]
("Fiona" "is" "young" "-")
((((((triple6) -> (rule9 % int3)) triple6) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is smart.
True
8
proof
[(((((triple6) -> rule9) ((((((triple6) -> rule9) triple6) -> rule4)) -> rule5)) -> rule1))]
("Fiona" "is" "smart" "+")
((((triple6) -> (rule9 % int4)) ((((((triple6) -> (rule9 % int4)) triple6) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is not smart.
False
8
inv-proof
[(((((triple6) -> rule9) ((((((triple6) -> rule9) triple6) -> rule4)) -> rule5)) -> rule1))]
("Fiona" "is" "smart" "-")
((((triple6) -> (rule9 % int4)) ((((((triple6) -> (rule9 % int4)) triple6) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is not red.
True
13
proof
[(((((((triple6) -> rule9) triple6) -> rule4) ((((triple6) -> rule9) ((((((triple6) -> rule9) triple6) -> rule4)) -> rule5)) -> rule1)) -> rule2))]
("Fiona" "is" "red" "-")
((((((triple6) -> (rule9 % int5)) triple6) -> (rule4 % int4)) ((((triple6) -> (rule9 % int5)) ((((((triple6) -> (rule9 % int5)) triple6) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
Fiona is white.
("Fiona" "is" "white" "+")
int5
Fiona is red.
False
13
inv-proof
[(((((((triple6) -> rule9) triple6) -> rule4) ((((triple6) -> rule9) ((((((triple6) -> rule9) triple6) -> rule4)) -> rule5)) -> rule1)) -> rule2))]
("Fiona" "is" "red" "+")
((((((triple6) -> (rule9 % int5)) triple6) -> (rule4 % int4)) ((((triple6) -> (rule9 % int5)) ((((((triple6) -> (rule9 % int5)) triple6) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
Fiona is white.
("Fiona" "is" "white" "+")
int5
Harry is not green.
Unknown
inv-rconc
[@1: Harry is green.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Harry" "is" "green" "-")
Bob is smart.
Unknown
rconc
[@1: Bob is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "smart" "+")
Anne is not smart.
Unknown
inv-rconc
[@1: Anne is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "smart" "-")
Anne is green.
Unknown
rconc
[@1: Anne is green.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Anne" "is" "green" "+")
Harry is not red.
Unknown
inv-random
[@0: Harry is red.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "red" "-")
Bob is big.
Unknown
random
[@0: Bob is big.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "big" "+")
Harry is not blue.
Unknown
inv-random
[@0: Harry is blue.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "blue" "-")
Anne is big.
Unknown
random
[@0: Anne is big.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "big" "+")
@0: Anne is red.[(triple1)] Anne is white.[(triple2)] Bob is blue.[(triple3)] Bob is red.[(triple4)] Fiona is big.[(triple5)] Fiona is blue.[(triple6)] Harry is big.[(triple7)] Harry is not smart.[(triple8)] Harry is not young.[(triple10)] Harry is white.[(triple9)] @1: Anne is not young.[(((triple1) -> rule7))] Bob is not young.[(((triple4) -> rule7))] Bob is white.[(((triple3) -> rule9))] Fiona is white.[(((triple6) -> rule9))] @2: Bob is green.[(((((triple3) -> rule9) triple3) -> rule4))] Fiona is green.[(((((triple6) -> rule9) triple6) -> rule4))] @3: Fiona is young.[(((((((triple6) -> rule9) triple6) -> rule4)) -> rule5))] @4: Fiona is smart.[(((((triple6) -> rule9) ((((((triple6) -> rule9) triple6) -> rule4)) -> rule5)) -> rule1))] @5: Fiona is not red.[(((((((triple6) -> rule9) triple6) -> rule4) ((((triple6) -> rule9) ((((((triple6) -> rule9) triple6) -> rule4)) -> rule5)) -> rule1)) -> rule2))]
Anne is red.
("Anne" "is" "red" "+")
triple1
Anne is white.
("Anne" "is" "white" "+")
triple2
Bob is blue.
("Bob" "is" "blue" "+")
triple3
Bob is red.
("Bob" "is" "red" "+")
triple4
Fiona is big.
("Fiona" "is" "big" "+")
triple5
Fiona is blue.
("Fiona" "is" "blue" "+")
triple6
Harry is big.
("Harry" "is" "big" "+")
triple7
Harry is not smart.
("Harry" "is" "smart" "-")
triple8
Harry is not young.
("Harry" "is" "young" "-")
triple10
Harry is white.
("Harry" "is" "white" "+")
triple9
Anne is not young.
("Anne" "is" "young" "-")
((triple1) -> (rule7 % int1))
Anne is not young.
("Anne" "is" "young" "-")
int1
Bob is not young.
("Bob" "is" "young" "-")
((triple4) -> (rule7 % int1))
Bob is not young.
("Bob" "is" "young" "-")
int1
Bob is white.
("Bob" "is" "white" "+")
((triple3) -> (rule9 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
((triple6) -> (rule9 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
((((triple3) -> (rule9 % int2)) triple3) -> (rule4 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
((((triple6) -> (rule9 % int2)) triple6) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
((((((triple6) -> (rule9 % int3)) triple6) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Fiona is smart.
("Fiona" "is" "smart" "+")
((((triple6) -> (rule9 % int4)) ((((((triple6) -> (rule9 % int4)) triple6) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule1 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Fiona is not red.
("Fiona" "is" "red" "-")
((((((triple6) -> (rule9 % int5)) triple6) -> (rule4 % int4)) ((((triple6) -> (rule9 % int5)) ((((((triple6) -> (rule9 % int5)) triple6) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is not red.
("Fiona" "is" "red" "-")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
Fiona is white.
("Fiona" "is" "white" "+")
int5