module entity_event_and_action sort declarations thing :: universe entity :: thing spatial_entity :: entity place :: spatial_entity tangible_entity :: spatial_entity physical_object :: tangible_entity inanimate_object :: physical_object living_entity :: physical_object event :: thing attributes agent : entity -> booleans object : entity -> booleans base : thing -> booleans experiencer : entity -> booleans instrument : entity -> booleans donor : entity -> booleans recipient : entity -> booleans beneficiary : living_entity -> booleans raw_material : tangible_entity -> booleans result : entity -> booleans origin : spatial_entity -> booleans destination : spatial_entity -> booleans away_from : spatial_entity -> booleans toward : spatial_entity -> booleans site : spatial_entity -> booleans path : spatial_entity -> booleans actions :: event activity :: event function declarations statics defined defined_agent : event -> booleans defined_object : event -> booleans defined_base : event -> booleans defined_instrument : event -> booleans defined_recipient : event -> booleans defined_donor : event -> booleans defined_beneficiary : event -> booleans defined_result : event -> booleans defined_raw_material : event -> booleans defined_experiencer : event -> booleans defined_path : event -> booleans defined_toward : event -> booleans axioms defined_agent(X) if agent(X, Y). defined_object(X) if object(X, Y). defined_base(X) if base(X, Y). defined_instrument(X) if instrument(X, Y). defined_recipient(X) if recipient(X, Y). defined_donor(X) if donor(X, Y). defined_beneficiary(X) if beneficiary(X, Y). defined_result(X) if result(X, Y). defined_raw_material(X) if raw_material(X, Y). defined_experiencer(X) if experiencer(X, Y). defined_path(X) if path(X, Y). defined_toward(X) if toward(X, Y).