On Saturday, December 1, 2018 at 4:24:31 PM UTC+1, Amirouche Boubekki wrote: > > Hello Matías, > > On Sunday, November 18, 2018 at 9:31:24 PM UTC+1, Matías Guzmán Naranjo > wrote: >> >> Hi all, >> >> are there any updates on this topic? Tahnks >> > > Do you have reference about feature structure you are talking about? > > Is it the same thing that is described in > http://www.nltk.org/howto/featstruct.html? >
FWIW, My latest work on this subject boils down to mimicking more of datomic <https://www.datomic.com/>, as a simpler than RDF triple store. I started my experiments with GNU Guile, but I am moving to Chez Scheme. Like I said, previously my work is around a database that you can query (recursively) using minikanren. I did not find enough papers about feature structures per se to know how they are useful. My understanding is that you can implement feature structures in my database. E.g the following feature structure taken from wikipedia <https://en.wikipedia.org/wiki/Feature_structure>: { category : noun phrase, agreement: { number: singular, person: third}} Can be encoded a set of three tuples (subject, predicate, object): (P4X432, category noun, phrase) (P4X432, agreement, ZXP202) (ZXP202, number, singular) (ZXP202, person, third) Then you can query it using minikanren using a specific -o procedure here a full example with data <https://framagit.org/a-guile-mind/guile-wiredtiger/blob/070ed68139d99c279f058a6c293f00292d35dbd7/tests/feature-space.scm#L81-103> : (test-check "microkanren fs:queryo" (with-env (env-open* "wt" (list *feature-space*) "create") ;; fixture (let* ((concept/fruit (fs:add! (list '(name . "fruit")))) (concept/strawberry (fs:add! (list '(name . "strawberry")))) (concept/fig (fs:add! (list '(name . "fig")))) (link/strawberry-is-a-good-fruit (fs:add! (list `(from . ,concept/strawberry) `(name . "is good") `(to . ,concept/fruit)))) (link/fig-is-a-good-fruit (fs:add! (list `(from . ,concept/fig) `(name . "is good") `(to . ,concept/fruit))))) ;; execute query (sort (map car (run* (name?) (fresh (concept?? link?? a-fruit-that-is-good??) (fs:queryo concept?? 'name "fruit") (fs:queryo link?? 'to concept??) (fs:queryo link?? 'name "is good") (fs:queryo link?? 'from a-fruit-that-is-good??) (fs:queryo a-fruit-that-is-good?? 'name name?)))) string<))) '("fig" "strawberry")) The query anwser the question : what fruit is good? Which boils down to follow relation along a predefined path. This is a example of neighborhood querying, recursive queries are also possible but I did not find a good example / real life example of such query. I am super thrilled to work together on this if you don't mind sharing some of your knowledge regarding this subject. Also you might be interested by https://github.com/webyrd/mediKanren/ Best regards, Amirouche -- You received this message because you are subscribed to the Google Groups "minikanren" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/minikanren. For more options, visit https://groups.google.com/d/optout.
