Talk:Pattern matching

From OpenCog
Jump to: navigation, search

Grounding

Should there be a discussion on why grounding is necessary in some circumstances? Adam (talk) 06:15, 24 January 2017 (UTC)

Of all the operations the pattern matcher does, grounding is the most basic, central one: its the one that people want the most often; its the simplest case. Everything else that the pattern matcher does is essentially bells-n-whistles on top of that. Grounding is "fill in this blank for me with all possible answers".Linas (talk) 08:01, 24 January 2017 (UTC)
p.s. what I am calling "grounding" is what some people call "pattern matching". See for example, the confusion in the second URL below "What's the difference between term rewriting and pattern matching?" ask answered on http://cstheory.stackexchange.com/ Linas (talk) 08:11, 24 January 2017 (UTC)

instantiate vs rewrite

"Considered as a scheme function, cog-bind also has a scheme-valued return value: it returns a list of all of the patterns that were instantiated." - if a rewrite occurs, should the patterns returned by the cog-bind function that have been rewritten be defined as 'edited' or 'rewritten' instead of 'instantiated'? Adam (talk) 06:27, 24 January 2017 (UTC)

Its "textbook terminology", the word "edited" is never ever used in this context. "rewriting" is the generic term; there are conference devoted to "term rewriting", "string rewriting", etc. and these show up in book titles. "instantiation" is another tech term for "create an instance of something"; so for example, the number 42 is an instance of a number. You can ask "please instantiate me a number" and someone can reply "OK, 42". In this context, instances of "john threw a ___" would be "john threw a ball", "John threw a rock" Examples of rewrites would be "a ball was pitched by John", "there was a hurling of rocks from John"
The biggest problem I have in writing this page is to rapidly convey a rather very wide and broad set of concepts in a very small space. I can't very-well say "go read these 5 books first, then you'll understand this page", so there is some amount of hand-waving and lack of rigor here, just to keep it brief.
e.g "read this wiki page first: https://en.wikipedia.org/wiki/Rewriting Heh. Just joking, but hat wiki page gives a hint of the complexity hiding under the covers, here. Here is another goodie: http://cstheory.stackexchange.com/questions/6256/whats-the-difference-between-term-rewriting-and-pattern-matching Linas (talk) 08:01, 24 January 2017 (UTC)