Hi Nil, So here is the logic now that I'm using thus far for my project. I'm using to files, one Scheme file to express most of the logic and one Python file because I find that Python is easier to use for communication with a soon to emerge JavaScript front-end.
Also, I find Python easier to allow for undetermined number of entities in one statement and also an undetermined number of sub-statements. Ultimately, I want users to be able to make arbitrary statements on the front-end that then follow this sort of logic in which truth values are determined in a variant of a prediction market mechanism as in that Scheme file. Here's the Scheme file: https://github.com/CollectiWise/collectiwise/blob/master/collectiwise.scm (examples of how these functions are called are here: https://github.com/CollectiWise/collectiwise/blob/master/collectiWiseKB.scm) And here's a Python wrapper with a bit of extra logic added as well: https://github.com/CollectiWise/collectiwise/blob/master/python/wrapper.py Now to my question: I'm trying to generalize this logic so that a person on the frontend can make any sort of statement that is permissible in opencog. I'm starting with general statements that have one simple truth value (for now I'm setting the secondary parameter always to 1 but that can be easily relaxed). Next, I need to be able to make statements of the following kind, as an example: There's five people: john =Concept john mike =Concept mike judy=Concept judy anne=Concept Anne george= Concept george One of them will win some contest: Concept contest Winner is: george will-win (stv 0.1 1) mike will win (stv 0.2 1) john will win (stv 0.2 1) judy will win (stv 0.1 1) anne will win (stv 0.3 1) george will win (stv 1-p(all-the-other-ones) 1) How do I insure that there's a statement, like will win and 5 outcomes, the probabilities of which always add to 1, such that if one probability changes all others will automatically adjust? Also, do you think that there's a simpler way than the way that I have started to code for users to be able to make general statements with probabilities determined in a type of market? I know that these are a lot of questions and I apologize ahead of time! Thank you! Johannes On Tuesday, December 11, 2018 at 7:28:45 AM UTC, Nil wrote: > > Hi Johannes, > > On 12/10/18 6:48 PM, Johannes Castner wrote: > > ; all users have an account > > (EvaluationLink > > account > > (ListLink > > User > > ) > > ) > > note that you don't need to wrap the argument with a ListLink if > there's only one, you might write > > (EvaluationLink > account > User) > > > How do I say that an account has points in it, that can be updated and > > Depends on what you mean "has points in it". `account` is a predicate > so it indeed can have stuff in it by using `EvaluationLink` as you did > with `User`, which says `User` is in `account`. If `account` where a > concept, then you could equivalently (or isomorphically equivalently) > write > > (MemberLink > User > account) > > > that a user has that account etc? I'm sorry, I'm still rather new to > > Atomese and I've been trying to figure this out but I'm seriously stuck. > > Please help! > > It's not clear to me what you want to express. If you write it in FOL > we'll definitely be able to translate it to Atomese. > > Nil > -- 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/5459cd60-4a1f-4c4e-9079-d6608b5b032f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
