[2:28pm] lkagal: ver 2.5 uses RuleSet and Rule, reasoner doesn't support that yet
[2:28pm] oshani joined the chat room.
[2:28pm] lkagal: reasoner still uses Policy and BeliefRule
[2:28pm] fuming: air is the policy language defined policy as rule sets
[2:30pm] fuming: action is described in RuleContainer
[2:31pm] lkagal: if should not be a action, add else to action subproperty
[2:32pm] lkagal: Here is Ankesh's presentation: http://dig.csail.mit.edu/2010/Talks/0301-AIR/AIR-overview-ak.pdf
[2:36pm] fuming: no nested else in the AIR
[2:36pm] Pipian_: Just checked in a fix to use RuleSet in addition to Policy. Also, just looked and saw that as the reasoner just looks at the "air:rule" properties attached to the policy, there's no problem switching to Rule.
[2:39pm] lkagal: Sam: overloading if to do both pattern matching and variable binding
[2:39pm] jnpato joined the chat room.
[2:41pm] lkagal: There are nested else in AIR - but inadvertent errors caused wrong punctuation can be avoided by using the full-form (else - rule - else)
[2:48pm] lkagal: cannot have else for an if when you use universal quantification for variables being bound
[2:50pm] fuming: " variable binding and pattern matching " usage is now discussed
[2:53pm] lkagal: Ian: when patterns that do variable binding do not match, their else acts like it was an existential binding, if they match, their then acts like it was a universal (or as declared) binding.
[3:03pm] fuming: Mike: What's the thing that user want to express?
[3:07pm] fuming: @forall scoping , a problem?
[3:13pm] lkagal: @for* versus air:variable. Pros and cons for each.
[3:17pm] lkagal: sam: force reasoner to ensure that global variables are declared just before policy/rule
[3:17pm] lkagal: jie: no need to discuss this, most policy developers will use some interface to generate air policies and not directly use the language
[3:18pm] lkagal: +1 for Jie
[3:19pm] fuming: + 1 for jie, interface tool for AIR is a good topic. We should include that to see AIR usage in non-logic programming user's perspective
[3:31pm] fuming: talking about belief rule, ellipse rule, hidden rule
[3:36pm] lkagal: Thanks Ankesh.
[3:47pm] Pipian_ was promoted to operator by Pipian.
[3:52pm] jnpato left the chat room. (Ping timeout: 240 seconds)
[4:00pm] lkagal: rete implemented as alpha and beta networks. Alpha networks for pattern matching and beta networks for production (assertions). Beta not req for all rete engines
[4:01pm] fuming: Ian: explaining Rete-based reasoner
[4:01pm] fuming: AIR reasoner is built upon rete-based reasoner
[4:02pm] fuming: alpha network and Beta network in Rete-based reasoner
[4:03pm] fuming: Beta-network, gives us the production rule that gives us the new rules
[4:03pm] fuming: LK: which happens first , alpha or beta?
[4:08pm] lkagal: in AIR, no need to generate alpha network, air uses indexes
[4:09pm] lkagal: topological sort of patterns coming in
[4:12pm] lkagal: Builtins processing: when the beta network comes across a builtin in a pattern, it ignores the alpha memory and executes the builtin.
[4:13pm] lkagal: The builtin results do not have to explicitly stated in the data (e.g. ( 1 2 ) math:sum 3) and is executed and asserted by beta network
[4:14pm] lkagal: TMS associated with the reasoner
[4:14pm] fuming: maintains a separate TMS system to explain how we get to the result, keeps track of the reasoning path.
[4:16pm] lkagal: Anything imported is stated to be a premise (facts or rules).
[4:17pm] lkagal: For anything that is asserted, they have an additional justification that says what caused them to be asserted.
[4:18pm] lkagal: Everytime beta network asserts something, it tells the TMS to assert something and gives reason.
[4:20pm] lkagal: TMS is completely separate from rete engine. Rete only for pattern matching and variable bindings. When fact is asserted that fact is pushed into tms.
[4:21pm] lkagal: do some static checking while compiling into rete networks
[4:23pm] lkagal: tms in policyrunner.py and tms.py
[4:24pm] lkagal: rete is in rete.py
[4:25pm] fuming: Can we have? we should have a slide of this explanation on the whiteboard of AIR reasoner, and some mapping of explanation to the existing codebase of AIR
[4:27pm] Pipian_ left the chat room. (Quit: Pipian_)
[4:30pm] lkagal: Could we add a non-justification generation mode for the air reasoner
[4:31pm] lkagal: running policyrunner.py
[4:32pm] lkagal: python policyrunner test policyURI data1URI data2URI data3URI ...
[4:33pm] lkagal: other option is to edit policyrunner.py and add a test and run
[4:34pm] fuming: is there a example of running AIR-reasoner from commandline?
[4:34pm] lkagal: python policyrunner.py <testname>
[4:36pm] Pipian_ joined the chat room.
[4:36pm] ankesh joined the chat room.
[4:36pm] lkagal: AIR example on mrburns: http://mr-burns.w3.org/cgi-bin/air_2_0.py?logFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/request.n3&logFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/pandora-signed-stat.n3&logFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/johnsmith-signed-stat.n3&rulesFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/bigcity-policy.n3
[4:37pm] lkagal: Use this link in FF after installing tabulator
[4:38pm] samuelsw: http://mr-burns.w3.org/cgi-bin/air_2_0.py?logFile=http://dig.csail.mit.edu/2010/DHS-fusion/MD/tests/MauryReplyToMia.n3&rulesFile=http://dig.csail.mit.edu/2010/DHS-fusion/MD/rules/MdCodeComLaw_12_15_01_11.n3
[4:39pm] ankesh: http://mr-burns.w3.org/cgi-bin/air_2_0.py?logFile=http://tw.rpi.edu/proj/tami/Special:ExportRDF%3Fpages=AIR_Demo_Data%26recursive=1%26postform=1&rulesFile=http%3A//tw.rpi.edu/proj/tami/Special%3ASimpleExport%3Fpage%3DTutorial_Policy_2_v2%26landmark%3Dn3&
[4:43pm] lkagal: This should work: http://mr-burns.w3.org/cgi-bin/air_2_0.py?logFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/request-bigcity.n3&logFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/bigpharma-signed-stat2.n3&rulesFile=http://dig.csail.mit.edu/2010/Papers/www-ws/examples/bigcity-policy.n3
[4:48pm] baojie joined the chat room.
[4:49pm] oshani: fuming, use http://dig.csail.mit.edu/2007/tab/release/unofficial/tab-02012010.xpi
[4:49pm] baojie left the chat room. (Remote host closed the connection)
[4:50pm] samuelsw: python ./policyrunner.py test http://dig.csail.mit.edu/2010/DHS-fusion/MD/rules/MdCodeComLaw_12_15_01_11.n3 http://dig.csail.mit.edu/2010/DHS-fusion/MD/tests/MauryReplyToMia.n3
[4:50pm] samuelsw: should produce meaningful command line otuput
[4:50pm] baojie joined the chat room.
[4:51pm] oshani: http://dig.csail.mit.edu/2008/yes-thesis/
[4:54pm] oshani: found it - http://people.csail.mit.edu/syosi/meng-thesis/thesis.pdf
[4:55pm] lkagal: svn repo: https://svn.csail.mit.edu/dig/
[5:26pm] baojie left the chat room. (Remote host closed the connection)
[5:32pm] samuelsw left the chat room. (Quit: samuelsw)
[5:32pm] fuming left the chat room. (Quit: fuming)
[5:32pm] oshani left the chat room. (Quit: oshani)
[5:33pm] oshani joined the chat room.
[5:33pm] jnpato joined the chat room.
[5:36pm] fuming joined the chat room.
[5:36pm] fuming left the chat room. (Client Quit)
[5:37pm] samuelsw joined the chat room.
[5:37pm] samuelsw left the chat room. (Client Quit)
[5:38pm] You left the chat by being disconnected from the server.
[5:40pm] You rejoined the room.
[5:41pm] lkagal: Ian: app for "why am I happy/not happy in this city"
[5:41pm] lkagal: Ankesh: app for "why was this wine recommended to me"
[5:41pm] lkagal: Jie: integrity constraints
[5:42pm] lkagal: Ian: app for calorie counting, why can/cannot I eat this today ?
[5:45pm] jnpato left the chat room. (Ping timeout: 240 seconds)