Files
Sheerka-Old/sheerka_backup/default.sb
T
kodjo 1059ce25c5 Fixed #68: Implement SheerkaQL
Fixed #70: SheerkaFilterManager : Pipe functions
Fixed #71: SheerkaFilterManager : filter_objects
Fixed #75: SheerkaMemory: Enhance memory() to use the filtering capabilities
Fixed #76: SheerkaEvaluateConcept: Concepts that modify the state of the system must not be evaluated during question
2021-04-26 19:13:47 +02:00

78 lines
2.2 KiB
Plaintext

# question
push_ontology("english")
def concept q from q ? as question(q) pre is_question() auto_eval True
set_is_lesser(__PRECEDENCE, q, 'Sya')
def concept the x where isinstance(x, Concept) ret memory(x)
def concept a x where isinstance(x, Concept) ret x
def concept an x where isinstance(x, Concept) ret x
set_is_greatest(__PRECEDENCE, c:the x:, 'Sya')
set_is_greatest(__PRECEDENCE, c:a x:, 'Sya')
set_is_greatest(__PRECEDENCE, c:an x:, 'Sya')
def concept "x is a concept" as isinstance(x, Concept) pre is_question()
# is a
def concept x is a y as set_isa(x, y) ret x auto_eval True
def concept x is an y as set_isa(x, y) ret x auto_eval True
def concept x is a y as isa(x,y) pre is_question()
def concept x is an y as isa(x,y) pre is_question()
# has a
def concept x has a y as set_hasa(x, y) ret x auto_eval True
def concept x has an y as set_hasa(x, y) ret x auto_eval True
def concept x has a y as hasa(x,y) pre is_question()
def concept x has an y as hasa(x,y) pre is_question()
# AND
def concept x and y as x and y pre is_question()
set_is_lesser(__PRECEDENCE, c:x and y:, 'Sya')
set_is_less_than(__PRECEDENCE, c:q:, c:x and y:, 'Sya')
# OR
def concept x or y as x or y pre is_question()
set_is_lesser(__PRECEDENCE, c:x or y:, 'Sya')
set_is_greater_than(__PRECEDENCE, c:x and y:, c:x or y:, 'Sya')
set_is_less_than(__PRECEDENCE, c:q:, c:x or y:, 'Sya')
# some words
def concept human
def concept male
def concept female
def concept man
def concept woman
def concept boy
def concept girl
man is a male
man is a human
boy is a male
boy is a human
woman is a female
woman is a human
girl is a female
girl is a human
def concept boys
def concept girls
def concept shirt
def concept table
# days of the week
def concept monday
def concept tuesday
def concept wednesday
def concept thursday
def concept friday
def concept saturday
def concept sunday
# questions
def concept how is x pre is_question() as smart_get_attr(x, adjective)
def concept what x is y pre is_question() where x is an adjective as smart_get_attr(y, x)
def concept what is the x of y pre is_question() where x is an adjective as smart_get_attr(y, x)
#
def concept he ret memory("self is a human and self is a male")
def concept she ret memory("self is a human and self is a female")