Skip to content

Conversation

MarcCote
Copy link
Contributor

@MarcCote MarcCote commented Sep 13, 2018

A couple of highlights:

  • Can now define multiple alternatives for a given alias. For instance,
reachable(x) = in(x, I);
reachable(x) = at(x, r) & at(P, r);
  • Better expansion of rules, predicates, and aliases for all descendant subtypes.
  • While doing the expansion, preserve rules, predicates and alias that are more fine-grained (e.g. keep the definition of open(door) when expanding open(openable) where door is a subtype of openable).
  • Add argument types to rule name. This makes finding expanded rules easier.
  • Add box, a type of portable container;
  • Add stool, a type of portable supporter;
  • Now, a fixed in place container is known as chest
  • Now, a fixed in place supporter is known as table

TODO

  • Tests still failing.
  • I'm not entirely sure the "keep fine-grained definitions" work as expected. For instance, I'm not dealing when two parent types defined a same rule/predicate/alias.
  • Add documentation and clean commented code.

@MarcCote MarcCote requested a review from tavianator September 13, 2018 14:43
@MarcCote MarcCote force-pushed the openable-lockable-attributes_marc branch 3 times, most recently from 7349c21 to a94b5f1 Compare September 26, 2018 13:04
@MarcCote MarcCote closed this Oct 1, 2018
@MarcCote MarcCote force-pushed the openable-lockable-attributes_marc branch from a94b5f1 to 2fb6b36 Compare October 1, 2018 19:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant