Anne is green. Anne is kind. Anne is nice. Anne is red. Dave is blue. Dave is green. Dave is kind. Dave is red. Dave is young. Fiona is blue. Fiona is young. Harry is blue. Harry is kind. Harry is nice. Harry is red. Harry is young. Red things are nice. All smart things are red. All kind, blue things are nice.
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is red.
("Anne" "is" "red" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is young.
("Dave" "is" "young" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is young.
("Harry" "is" "young" "+")
Red things are nice.
((("something" "is" "red" "+")) -> ("something" "is" "nice" "+"))
All smart things are red.
((("something" "is" "smart" "+")) -> ("something" "is" "red" "+"))
All kind, blue things are nice.
((("something" "is" "kind" "+") ("something" "is" "blue" "+")) -> ("something" "is" "nice" "+"))
Harry is blue.
True
1
proof
[(triple12)]
("Harry" "is" "blue" "+")
triple12
Dave is not blue.
False
1
inv-proof
[(triple5)]
("Dave" "is" "blue" "-")
triple5
Dave is nice.
True
2
proof
[(((triple8) -> rule1) OR ((triple7 triple5) -> rule3))]
("Dave" "is" "nice" "+")
((triple8) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple7 triple5) -> (rule3 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is not nice.
False
2
inv-proof
[(((triple8) -> rule1) OR ((triple7 triple5) -> rule3))]
("Dave" "is" "nice" "-")
((triple8) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple7 triple5) -> (rule3 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Fiona is not red.
Unknown
inv-rconc
[@1: Fiona is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Fiona" "is" "red" "-")
Fiona is nice.
Unknown
rconc
[@2: Fiona is nice.[CWA. Example of deepest failure = (rule1 <- rule2 <- FAIL)]]
("Fiona" "is" "nice" "+")
Harry is not green.
Unknown
inv-random
[@0: Harry is green.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "green" "-")
Harry is smart.
Unknown
random
[@0: Harry is smart.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "smart" "+")
@0: Anne is green.[(triple1)] Anne is kind.[(triple2)] Anne is nice.[(triple3 OR ((triple4) -> rule1))] Anne is red.[(triple4)] Dave is blue.[(triple5)] Dave is green.[(triple6)] Dave is kind.[(triple7)] Dave is red.[(triple8)] Dave is young.[(triple9)] Fiona is blue.[(triple10)] Fiona is young.[(triple11)] Harry is blue.[(triple12)] Harry is kind.[(triple13)] Harry is nice.[(triple14 OR ((triple15) -> rule1) OR ((triple13 triple12) -> rule3))] Harry is red.[(triple15)] Harry is young.[(triple16)] @1: Dave is nice.[(((triple8) -> rule1) OR ((triple7 triple5) -> rule3))]
Anne is green.
("Anne" "is" "green" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
Anne is nice.
("Anne" "is" "nice" "+")
triple3
((triple4) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
triple4
Dave is blue.
("Dave" "is" "blue" "+")
triple5
Dave is green.
("Dave" "is" "green" "+")
triple6
Dave is kind.
("Dave" "is" "kind" "+")
triple7
Dave is red.
("Dave" "is" "red" "+")
triple8
Dave is young.
("Dave" "is" "young" "+")
triple9
Fiona is blue.
("Fiona" "is" "blue" "+")
triple10
Fiona is young.
("Fiona" "is" "young" "+")
triple11
Harry is blue.
("Harry" "is" "blue" "+")
triple12
Harry is kind.
("Harry" "is" "kind" "+")
triple13
Harry is nice.
("Harry" "is" "nice" "+")
triple14
((triple15) -> (rule1 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((triple13 triple12) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
triple15
Harry is young.
("Harry" "is" "young" "+")
triple16
Dave is nice.
("Dave" "is" "nice" "+")
((triple8) -> (rule1 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple7 triple5) -> (rule3 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1