Bob is blue. Bob is cold. Bob is quiet. Charlie is not blue. Charlie is not nice. Charlie is smart. Charlie is young. Erin is cold. Erin is nice. Erin is quiet. Erin is smart. Erin is young. If something is cold and kind then it is young. Blue things are quiet. If something is cold and quiet then it is kind.
Bob is blue.
("Bob" "is" "blue" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Charlie is not blue.
("Charlie" "is" "blue" "-")
Charlie is not nice.
("Charlie" "is" "nice" "-")
Charlie is smart.
("Charlie" "is" "smart" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Erin is young.
("Erin" "is" "young" "+")
If something is cold and kind then it is young.
((("something" "is" "cold" "+") ("something" "is" "kind" "+")) -> ("something" "is" "young" "+"))
Blue things are quiet.
((("something" "is" "blue" "+")) -> ("something" "is" "quiet" "+"))
If something is cold and quiet then it is kind.
((("something" "is" "cold" "+") ("something" "is" "quiet" "+")) -> ("something" "is" "kind" "+"))
Erin is cold.
True
1
proof
[(triple8)]
("Erin" "is" "cold" "+")
triple8
Erin is not smart.
False
1
inv-proof
[(triple11)]
("Erin" "is" "smart" "-")
triple11
Charlie is not quiet.
Unknown
inv-rconc
[@1: Charlie is quiet.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Charlie" "is" "quiet" "-")
Charlie is cold.
Unknown
random
[@0: Charlie is cold.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "cold" "+")
@0: Bob is blue.[(triple1)] Bob is cold.[(triple2)] Bob is quiet.[(triple3 OR ((triple1) -> rule2))] Charlie is not blue.[(triple4)] Charlie is not nice.[(triple5)] Charlie is smart.[(triple6)] Charlie is young.[(triple7)] Erin is cold.[(triple8)] Erin is nice.[(triple9)] Erin is quiet.[(triple10)] Erin is smart.[(triple11)] Erin is young.[(triple12 OR ((triple8 ((triple8 triple10) -> rule3)) -> rule1))] @1: Bob is kind.[(((triple2 triple3) -> rule3) OR ((triple2 ((triple1) -> rule2)) -> rule3))] Erin is kind.[(((triple8 triple10) -> rule3))] @2: Bob is young.[(((triple2 ((triple2 triple3) -> rule3)) -> rule1) OR ((triple2 ((triple2 ((triple1) -> rule2)) -> rule3)) -> rule1))]
Bob is blue.
("Bob" "is" "blue" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
Bob is quiet.
("Bob" "is" "quiet" "+")
triple3
((triple1) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Charlie is not blue.
("Charlie" "is" "blue" "-")
triple4
Charlie is not nice.
("Charlie" "is" "nice" "-")
triple5
Charlie is smart.
("Charlie" "is" "smart" "+")
triple6
Charlie is young.
("Charlie" "is" "young" "+")
triple7
Erin is cold.
("Erin" "is" "cold" "+")
triple8
Erin is nice.
("Erin" "is" "nice" "+")
triple9
Erin is quiet.
("Erin" "is" "quiet" "+")
triple10
Erin is smart.
("Erin" "is" "smart" "+")
triple11
Erin is young.
("Erin" "is" "young" "+")
triple12
((triple8 ((triple8 triple10) -> (rule3 % int2))) -> (rule1 % int1))
Erin is young.
("Erin" "is" "young" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
((triple2 triple3) -> (rule3 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
((triple2 ((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Erin is kind.
("Erin" "is" "kind" "+")
((triple8 triple10) -> (rule3 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
((triple2 ((triple2 triple3) -> (rule3 % int2))) -> (rule1 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
((triple2 ((triple2 ((triple1) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is quiet.
("Bob" "is" "quiet" "+")
int3