Fiona is green. Fiona is kind. Fiona is quiet. Fiona is red. Fiona is young. Gary is big. Gary is green. Gary is kind. Gary is quiet. Gary is red. Gary is young. Harry is big. Harry is blue. Harry is kind. Harry is young. If something is big and young then it is blue. If something is quiet and blue then it is green. If something is young then it is quiet.
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is young.
("Gary" "is" "young" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is young.
("Harry" "is" "young" "+")
If something is big and young then it is blue.
((("something" "is" "big" "+") ("something" "is" "young" "+")) -> ("something" "is" "blue" "+"))
If something is quiet and blue then it is green.
((("something" "is" "quiet" "+") ("something" "is" "blue" "+")) -> ("something" "is" "green" "+"))
If something is young then it is quiet.
((("something" "is" "young" "+")) -> ("something" "is" "quiet" "+"))
Fiona is green.
True
1
proof
[(triple1)]
("Fiona" "is" "green" "+")
triple1
Gary is not young.
False
1
inv-proof
[(triple11)]
("Gary" "is" "young" "-")
triple11
Harry is quiet.
True
2
proof
[(((triple15) -> rule3))]
("Harry" "is" "quiet" "+")
((triple15) -> (rule3 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is not quiet.
False
2
inv-proof
[(((triple15) -> rule3))]
("Harry" "is" "quiet" "-")
((triple15) -> (rule3 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is green.
True
4
proof
[(((((triple15) -> rule3) triple13) -> rule2) OR ((((triple15) -> rule3) ((triple12 triple15) -> rule1)) -> rule2))]
("Harry" "is" "green" "+")
((((triple15) -> (rule3 % int2)) triple13) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
((((triple15) -> (rule3 % int3)) ((triple12 triple15) -> (rule1 % int2))) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is quiet.
("Harry" "is" "quiet" "+")
int3
Harry is not green.
False
4
inv-proof
[(((((triple15) -> rule3) triple13) -> rule2) OR ((((triple15) -> rule3) ((triple12 triple15) -> rule1)) -> rule2))]
("Harry" "is" "green" "-")
((((triple15) -> (rule3 % int2)) triple13) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
((((triple15) -> (rule3 % int3)) ((triple12 triple15) -> (rule1 % int2))) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is quiet.
("Harry" "is" "quiet" "+")
int3
Fiona is not blue.
Unknown
inv-rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "blue" "-")
Harry is red.
Unknown
random
[@0: Harry is red.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "red" "+")
@0: Fiona is green.[(triple1)] Fiona is kind.[(triple2)] Fiona is quiet.[(triple3 OR ((triple5) -> rule3))] Fiona is red.[(triple4)] Fiona is young.[(triple5)] Gary is big.[(triple6)] Gary is green.[(triple7 OR ((triple9 ((triple6 triple11) -> rule1)) -> rule2) OR ((((triple11) -> rule3) ((triple6 triple11) -> rule1)) -> rule2))] Gary is kind.[(triple8)] Gary is quiet.[(triple9 OR ((triple11) -> rule3))] Gary is red.[(triple10)] Gary is young.[(triple11)] Harry is big.[(triple12)] Harry is blue.[(triple13 OR ((triple12 triple15) -> rule1))] Harry is kind.[(triple14)] Harry is young.[(triple15)] @1: Gary is blue.[(((triple6 triple11) -> rule1))] Harry is quiet.[(((triple15) -> rule3))] @2: Harry is green.[(((((triple15) -> rule3) triple13) -> rule2) OR ((((triple15) -> rule3) ((triple12 triple15) -> rule1)) -> rule2))]
Fiona is green.
("Fiona" "is" "green" "+")
triple1
Fiona is kind.
("Fiona" "is" "kind" "+")
triple2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple3
((triple5) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
triple4
Fiona is young.
("Fiona" "is" "young" "+")
triple5
Gary is big.
("Gary" "is" "big" "+")
triple6
Gary is green.
("Gary" "is" "green" "+")
triple7
((triple9 ((triple6 triple11) -> (rule1 % int2))) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
((((triple11) -> (rule3 % int3)) ((triple6 triple11) -> (rule1 % int2))) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
triple8
Gary is quiet.
("Gary" "is" "quiet" "+")
triple9
((triple11) -> (rule3 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
triple10
Gary is young.
("Gary" "is" "young" "+")
triple11
Harry is big.
("Harry" "is" "big" "+")
triple12
Harry is blue.
("Harry" "is" "blue" "+")
triple13
((triple12 triple15) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
triple14
Harry is young.
("Harry" "is" "young" "+")
triple15
Gary is blue.
("Gary" "is" "blue" "+")
((triple6 triple11) -> (rule1 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
((triple15) -> (rule3 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
((((triple15) -> (rule3 % int2)) triple13) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
((((triple15) -> (rule3 % int3)) ((triple12 triple15) -> (rule1 % int2))) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is quiet.
("Harry" "is" "quiet" "+")
int3