Bob is blue. Bob is red. Bob is rough. Bob is smart. Charlie is blue. Charlie is red. Charlie is smart. Charlie is young. Erin is green. Erin is quiet. Erin is red. Erin is rough. Erin is smart. Erin is young. Fiona is green. Fiona is rough. Green people are young. If someone is red then they are quiet. If someone is young then they are red.
Bob is blue.
("Bob" "is" "blue" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is young.
("Erin" "is" "young" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Green people are young.
((("someone" "is" "green" "+")) -> ("someone" "is" "young" "+"))
If someone is red then they are quiet.
((("someone" "is" "red" "+")) -> ("someone" "is" "quiet" "+"))
If someone is young then they are red.
((("someone" "is" "young" "+")) -> ("someone" "is" "red" "+"))
Fiona is rough.
True
1
proof
[(triple16)]
("Fiona" "is" "rough" "+")
triple16
Bob is not blue.
False
1
inv-proof
[(triple1)]
("Bob" "is" "blue" "-")
triple1
Fiona is young.
True
2
proof
[(((triple15) -> rule1))]
("Fiona" "is" "young" "+")
((triple15) -> (rule1 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Bob is not quiet.
False
2
inv-proof
[(((triple2) -> rule2))]
("Bob" "is" "quiet" "-")
((triple2) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Fiona is red.
True
3
proof
[(((((triple15) -> rule1)) -> rule3))]
("Fiona" "is" "red" "+")
((((triple15) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is not red.
False
3
inv-proof
[(((((triple15) -> rule1)) -> rule3))]
("Fiona" "is" "red" "-")
((((triple15) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is quiet.
True
4
proof
[(((((((triple15) -> rule1)) -> rule3)) -> rule2))]
("Fiona" "is" "quiet" "+")
((((((triple15) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is not quiet.
False
4
inv-proof
[(((((((triple15) -> rule1)) -> rule3)) -> rule2))]
("Fiona" "is" "quiet" "-")
((((((triple15) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Bob is not young.
Unknown
inv-rconc
[@1: Bob is young.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "young" "-")
Fiona is smart.
Unknown
random
[@0: Fiona is smart.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "smart" "+")
Erin is not blue.
Unknown
inv-random
[@0: Erin is blue.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "blue" "-")
Fiona is blue.
Unknown
random
[@0: Fiona is blue.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "blue" "+")
Bob is not green.
Unknown
inv-random
[@0: Bob is green.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "green" "-")
Charlie is green.
Unknown
random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "+")
@0: Bob is blue.[(triple1)] Bob is red.[(triple2)] Bob is rough.[(triple3)] Bob is smart.[(triple4)] Charlie is blue.[(triple5)] Charlie is red.[(triple6 OR ((triple8) -> rule3))] Charlie is smart.[(triple7)] Charlie is young.[(triple8)] Erin is green.[(triple9)] Erin is quiet.[(triple10 OR ((triple11) -> rule2) OR ((((triple14) -> rule3)) -> rule2) OR ((((((triple9) -> rule1)) -> rule3)) -> rule2))] Erin is red.[(triple11 OR ((triple14) -> rule3) OR ((((triple9) -> rule1)) -> rule3))] Erin is rough.[(triple12)] Erin is smart.[(triple13)] Erin is young.[(triple14 OR ((triple9) -> rule1))] Fiona is green.[(triple15)] Fiona is rough.[(triple16)] @1: Bob is quiet.[(((triple2) -> rule2))] Charlie is quiet.[(((triple6) -> rule2) OR ((((triple8) -> rule3)) -> rule2))] Fiona is young.[(((triple15) -> rule1))] @2: Fiona is red.[(((((triple15) -> rule1)) -> rule3))] @3: Fiona is quiet.[(((((((triple15) -> rule1)) -> rule3)) -> rule2))]
Bob is blue.
("Bob" "is" "blue" "+")
triple1
Bob is red.
("Bob" "is" "red" "+")
triple2
Bob is rough.
("Bob" "is" "rough" "+")
triple3
Bob is smart.
("Bob" "is" "smart" "+")
triple4
Charlie is blue.
("Charlie" "is" "blue" "+")
triple5
Charlie is red.
("Charlie" "is" "red" "+")
triple6
((triple8) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
triple7
Charlie is young.
("Charlie" "is" "young" "+")
triple8
Erin is green.
("Erin" "is" "green" "+")
triple9
Erin is quiet.
("Erin" "is" "quiet" "+")
triple10
((triple11) -> (rule2 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
((((triple14) -> (rule3 % int2))) -> (rule2 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
((((((triple9) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
int2
Erin is young.
("Erin" "is" "young" "+")
int3
Erin is red.
("Erin" "is" "red" "+")
triple11
((triple14) -> (rule3 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
((((triple9) -> (rule1 % int2))) -> (rule3 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is young.
("Erin" "is" "young" "+")
int2
Erin is rough.
("Erin" "is" "rough" "+")
triple12
Erin is smart.
("Erin" "is" "smart" "+")
triple13
Erin is young.
("Erin" "is" "young" "+")
triple14
((triple9) -> (rule1 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
triple15
Fiona is rough.
("Fiona" "is" "rough" "+")
triple16
Bob is quiet.
("Bob" "is" "quiet" "+")
((triple2) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((triple6) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((((triple8) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
((triple15) -> (rule1 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
((((triple15) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((((((triple15) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3