本文整理汇总了Java中jason.asSyntax.ASSyntax.parseVar方法的典型用法代码示例。如果您正苦于以下问题:Java ASSyntax.parseVar方法的具体用法?Java ASSyntax.parseVar怎么用?Java ASSyntax.parseVar使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类jason.asSyntax.ASSyntax
的用法示例。
在下文中一共展示了ASSyntax.parseVar方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testSimple2
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testSimple2() throws ParseException {
VarTerm v = new VarTerm("X");
assertFalse(v.isAtom());
assertTrue(v.isVar());
Term t;
as2jTokenManager tokens = new as2jTokenManager(new SimpleCharStream(new StringReader("Event")));
Token tk = tokens.getNextToken();
assertEquals(tk.kind, jason.asSyntax.parser.as2jConstants.VAR);
t = ASSyntax.parseVar("Ea");
assertFalse(t.isAtom());
assertTrue(t.isVar());
t = ASSyntax.parseTerm("Event");
assertFalse(t.isAtom());
assertTrue(t.isVar());
}
示例2: testVarWithAnnots2
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots2() throws ParseException {
// test vars annots
// X[a] = Y[a,b] - ok
VarTerm v1 = ASSyntax.parseVar("X[a]");
VarTerm v2 = ASSyntax.parseVar("Y[a,b]");
Unifier u = new Unifier();
assertTrue(u.unifies(v1, v2));
// X[a,b] = Y[a] - not ok
u = new Unifier();
assertFalse(u.unifies(v2, v1));
assertTrue(u.unifies(v1, v2));
assertTrue(u.unifies(new LiteralImpl("vvv"), v1));
assertEquals("vvv[a]", v1.capply(u).toString());
}
示例3: testSimple2
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testSimple2() throws ParseException {
VarTerm v = new VarTerm("X");
assertFalse(v.isAtom());
assertTrue(v.isVar());
Term t;
as2jTokenManager tokens = new as2jTokenManager(new SimpleCharStream(new StringReader("Event")));
Token tk = tokens.getNextToken();
assertEquals(tk.kind, jason.asSyntax.parser.as2jConstants.VAR);
t = ASSyntax.parseVar("Ea");
assertFalse(t.isAtom());
assertTrue(t.isVar());
t = ASSyntax.parseTerm("Event");
assertFalse(t.isAtom());
assertTrue(t.isVar());
}
示例4: testVarWithAnnots1
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots1() throws ParseException {
VarTerm v1 = ASSyntax.parseVar("X[a,b,c]");
VarTerm v2 = ASSyntax.parseVar("X[a,b]");
assertTrue(v1.equals(v2));
v2.addAnnot(new Structure("c"));
assertTrue(v1.equals(v2));
assertTrue(v2.equals(v1));
Unifier u = new Unifier();
Pred p1 = Pred.parsePred("p(t1,t2)[a,c]");
// X[a,b,c] = p[a,c] nok
assertFalse(u.unifies(v1, p1));
assertEquals("p(t1,t2)[a,c]",p1.toString());
// p[a,c] = X[a,b,c] ok (X is p)
assertTrue(u.unifies(p1, v1));
assertEquals("p(t1,t2)[a,c]",p1.toString());
assertEquals(u.get("X").toString(), "p(t1,t2)");
p1.addAnnot(new Structure("b"));
p1.addAnnot(new Structure("d"));
u.clear();
// p[a,c,b,d] = X[a,b,c] nok
assertFalse(u.unifies(p1, v1));
u.clear();
// X[a,b,c] = p[a,c,b,d] ok (X is p)
assertTrue(u.unifies(v1, p1));
assertEquals(u.get("X").toString(), "p(t1,t2)");
assertEquals("p(t1,t2)[a,b,c]",v1.capply(u).toString());
}
示例5: testVarWithAnnots3
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots3() throws ParseException {
// X[a,b,c,d] = Y[a,c|R] - ok and R=[b,d]
VarTerm v1 = ASSyntax.parseVar("X[a,b,c,d]");
VarTerm v2 = ASSyntax.parseVar("Y[a,c|R]");
Unifier u = new Unifier();
assertTrue(u.unifies(v1, v2));
assertEquals("[b,d]",u.get("R").toString());
}
示例6: testVarWithAnnots5
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots5() throws ParseException {
// X[A|R] = p(1)[a,b,c] - ok and
// X = p(1), A = a, R=[b,c]
VarTerm v = ASSyntax.parseVar("X[A|R]");
Unifier u = new Unifier();
assertTrue(u.unifies(v, Literal.parseLiteral("p(1)[a,b,c]")));
assertEquals("[b,c]", u.get("R").toString());
assertEquals("a", u.get("A").toString());
assertEquals("p(1)", u.get(v).toString());
assertEquals("p(1)[a,b,c]", v.capply(u).toString());
}
示例7: testVarWithAnnots6
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots6() throws ParseException {
// P -> open[source(a)]
// P[source(self)]
// apply on P is open[source(a),source(self)]?
Unifier u = new Unifier();
u.unifies(new VarTerm("P"), Literal.parseLiteral("open[source(a)]"));
VarTerm v1 = ASSyntax.parseVar("P[source(self)]");
Literal tv1 = (Literal)v1.capply(u);
assertEquals(2,tv1.getAnnots().size());
}
示例8: testVarWithAnnotsInLogCons
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnotsInLogCons() throws RevisionFailedException, ParseException {
Agent ag = new Agent();
ag.initAg();
ag.addBel(Literal.parseLiteral("b1[b]"));
ag.addBel(Literal.parseLiteral("b2[d]"));
Unifier u = new Unifier();
VarTerm v1 = ASSyntax.parseVar("P[d]");
assertEquals(2, iteratorSize(ag.getBB().getCandidateBeliefs(v1, new Unifier())));
Iterator<Unifier> i = v1.logicalConsequence(ag, u);
assertTrue(i.hasNext());
u = i.next(); // u = {P[d]=b2}
assertEquals("b2[d]",v1.capply(u).toString());
}
示例9: testVarWithAnnots4
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots4() throws ParseException {
// X[source(A)] = open[source(a)] - ok and A -> a
VarTerm v1 = ASSyntax.parseVar("X[source(A)]");
Unifier u = new Unifier();
assertTrue(u.unifies(v1, Literal.parseLiteral("open[source(a)]")));
assertEquals(u.get("A").toString(),"a");
assertEquals(u.get("X").toString(),"open");
VarTerm v2 = ASSyntax.parseVar("X[source(self)]");
u = new Unifier();
assertFalse(u.unifies(v2, Literal.parseLiteral("open[source(a)]")));
}
示例10: testVarWithAnnots5
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnots5() throws ParseException {
// X[A|R] = p(1)[a,b,c] - ok and
// X = p(1), A = a, R=[b,c]
VarTerm v = ASSyntax.parseVar("X[A|R]");
Unifier u = new Unifier();
assertTrue(u.unifies(v, Literal.parseLiteral("p(1)[a,b,c]")));
assertEquals("[b,c]", u.get("R").toString());
assertEquals("a", u.get("A").toString());
assertEquals("p(1)", u.get(v).toString());
assertEquals("p(1)[a,b,c]", v.capply(u).toString());
}
示例11: testVarWithAnnotsInLogCons
import jason.asSyntax.ASSyntax; //导入方法依赖的package包/类
public void testVarWithAnnotsInLogCons() throws RevisionFailedException, ParseException {
Agent ag = new Agent();
ag.initAg();
ag.addBel(Literal.parseLiteral("b1[b]"));
ag.addBel(Literal.parseLiteral("b2[d]"));
Unifier u = new Unifier();
VarTerm v1 = ASSyntax.parseVar("P[d]");
assertEquals(2, iteratorSize(ag.getBB().getCandidateBeliefs(v1, new Unifier())));
Iterator<Unifier> i = v1.logicalConsequence(ag, u);
assertTrue(i.hasNext());
u = i.next(); // u = {P[d]=b2}
assertEquals("b2[d]",v1.capply(u).toString());
}