Charlie is young. Fiona is blue. Fiona is cold. Gary is big. Harry is cold. Harry is smart. Harry is young. All young things are cold. If Gary is kind then Gary is furry. If something is big and smart then it is kind. Big, kind things are young. If something is smart and kind then it is blue. All big, smart things are blue. Cold things are kind. If something is blue then it is young.
Charlie is young.
("Charlie" "is" "young" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Gary is big.
("Gary" "is" "big" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Harry is young.
("Harry" "is" "young" "+")
All young things are cold.
((("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
If Gary is kind then Gary is furry.
((("Gary" "is" "kind" "+")) -> ("Gary" "is" "furry" "+"))
If something is big and smart then it is kind.
((("something" "is" "big" "+") ("something" "is" "smart" "+")) -> ("something" "is" "kind" "+"))
Big, kind things are young.
((("something" "is" "big" "+") ("something" "is" "kind" "+")) -> ("something" "is" "young" "+"))
If something is smart and kind then it is blue.
((("something" "is" "smart" "+") ("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
All big, smart things are blue.
((("something" "is" "big" "+") ("something" "is" "smart" "+")) -> ("something" "is" "blue" "+"))
Cold things are kind.
((("something" "is" "cold" "+")) -> ("something" "is" "kind" "+"))
If something is blue then it is young.
((("something" "is" "blue" "+")) -> ("something" "is" "young" "+"))
Fiona is blue.
True
1
proof
[(triple2)]
("Fiona" "is" "blue" "+")
triple2
Charlie is not young.
False
1
inv-proof
[(triple1)]
("Charlie" "is" "young" "-")
triple1
Gary is not kind.
Unknown
inv-rconc
[@4: Gary is kind.[CWA. Example of deepest failure = (rule7 <- rule1 <- rule4 <- rule3 <- FAIL)]]
("Gary" "is" "kind" "-")
Fiona is furry.
Unknown
random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "+")
@0: Charlie is young.[(triple1)] Fiona is blue.[(triple2)] Fiona is cold.[(triple3 OR ((((triple2) -> rule8)) -> rule1))] Gary is big.[(triple4)] Harry is cold.[(triple5 OR ((triple7) -> rule1))] Harry is smart.[(triple6)] Harry is young.[(triple7 OR ((((triple6 ((triple5) -> rule7)) -> rule5)) -> rule8))] @1: Charlie is cold.[(((triple1) -> rule1))] Fiona is kind.[(((triple3) -> rule7) OR ((((((triple2) -> rule8)) -> rule1)) -> rule7))] Fiona is young.[(((triple2) -> rule8))] Harry is kind.[(((triple5) -> rule7) OR ((((triple7) -> rule1)) -> rule7))] @2: Charlie is kind.[(((((triple1) -> rule1)) -> rule7))] Harry is blue.[(((triple6 ((triple5) -> rule7)) -> rule5) OR ((triple6 ((((triple7) -> rule1)) -> rule7)) -> rule5))]
Charlie is young.
("Charlie" "is" "young" "+")
triple1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple2
Fiona is cold.
("Fiona" "is" "cold" "+")
triple3
((((triple2) -> (rule8 % int2))) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
triple4
Harry is cold.
("Harry" "is" "cold" "+")
triple5
((triple7) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is smart.
("Harry" "is" "smart" "+")
triple6
Harry is young.
("Harry" "is" "young" "+")
triple7
((((triple6 ((triple5) -> (rule7 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Charlie is cold.
("Charlie" "is" "cold" "+")
((triple1) -> (rule1 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple3) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((((((triple2) -> (rule8 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is young.
("Fiona" "is" "young" "+")
int3
Fiona is young.
("Fiona" "is" "young" "+")
((triple2) -> (rule8 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
((triple5) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((((triple7) -> (rule1 % int2))) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
((((triple1) -> (rule1 % int2))) -> (rule7 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
((triple6 ((triple5) -> (rule7 % int2))) -> (rule5 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((triple6 ((((triple7) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule5 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3