On Sun, May 20, 2018 at 4:45 PM, Ben Goertzel <[email protected]> wrote:
> > > Hmm, well when I think about the algorithms involved, I do not see why > the Pattern Miner and Pattern Matcher would be unable to search for > patterns involving Values... > Here is the key difference between the two: Atoms know what they are attached to. A link knows it's outgoing-set: its a C++ vector, accessible in nanoseconds. Any atom knows it's incoming set - a set of C++ "weak pointers", accessible in fractions of a microsecond. Thus, graph traversal is very fast. To create an atom, you have to create the incoming, outgoing sets, perform various consistency checks. This takes tens of microseconds. Values have no clue who they belong to. Given a Value, its impossible to know what atom it belongs to. (except to search all atoms). Thus, creating values, altering them is fast. Values are stored "inside of" atoms, under a key. Thus, every atom is a key-value database (i.e. every atom is a stand-alone noSQL database). To use Values in the pattern matcher, you have to create a predicate that can answer the question: "does this atom have a value filed at key X, and is that value the desired shape/form/value?" (viz, you have to perform a "nosql lookup" that returns yes/no as an answer). --linas > > > > > > > > > -- > Ben Goertzel, PhD > http://goertzel.org > > "Only those who will risk going too far can possibly find out how far > they can go." - T.S. Eliot > -- cassette tapes - analog TV - film cameras - you -- You received this message because you are subscribed to the Google Groups "opencog" 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/opencog. To view this discussion on the web visit https://groups.google.com/d/msgid/opencog/CAHrUA34HdVw%2BuV6P50UOAnoonZMCvOV_cELoAAsXLKzc3hNyoA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
