[Attempto] leq
Jason Livesay
ithkuil at gmail.com
Sun Apr 5 12:52:15 CEST 2009
Well, not to spam, but it seems that maybe a few things like 'less than' and
'at most' are just not implemented? This is what ACE Editor says:
Paraphrase
NOT IMPLEMENTED
Syntax Boxes
everywinethatchargesless than50pointsisfair.
Pretty-Printed DRS
[]
[A]
object(A, wine, countable, na, eq, 1)-1
[B, C]
object(B, point, countable, na, na, na)-1
predicate(C, charge, A, B)-1
=>
[]
quantity(B, less, 50)-1
=>
[D, E]
property(D, fair, pos)-1
predicate(E, be, A, D)-1
■
For every wine that charges at most 44 points the wine is dirty.
Paraphrase
NOT IMPLEMENTED
Syntax Boxes
foreverywinethatchargesat most44pointsthewineisdirty.
Pretty-Printed DRS
[]
[A]
object(A, wine, countable, na, eq, 1)-1
[B, C]
object(B, point, countable, na, na, na)-1
predicate(C, charge, A, B)-1
=>
[]
quantity(B, leq, 44)-1
=>
[D, E]
property(D, dirty, pos)-1
predicate(E, be, A, D)-1
■
Every wine that charges at least 14 points is active.
Paraphrase
If a wine X1 charges at least 14 points then the wine X1 is active.
Syntax Boxes
everywinethatchargesat least14pointsisactive.
Pretty-Printed DRS
[]
[A, B, C]
object(A, wine, countable, na, eq, 1)-1
object(B, point, countable, na, geq, 14)-1
predicate(C, charge, A, B)-1
=>
[D, E]
property(D, active, pos)-1
predicate(E, be, A, D)-1
■
Every wine that does not charge at least 50 points is smart.
Paraphrase
If there is a wine X1 and it is false that the wine X1 charges at
least 50 points then the wine X1 is smart.
Syntax Boxes
everywinethatdoesnotchargeat least50pointsissmart.
Pretty-Printed DRS
[]
[A]
object(A, wine, countable, na, eq, 1)-1
NOT
[B, C]
object(B, point, countable, na, geq, 50)-1
predicate(C, charge, A, B)-1
=>
[D, E]
property(D, smart, pos)-1
predicate(E, be, A, D)-1
+
Also I diffed the greps for 'geq' vs. 'leq'. I'm wondering if I could learn
prolog and maybe add the leq? Or maybe it is more complicated than I think.
1,13c1,12
< parser/grammar.fit: Comparison = geq,
< parser/grammar.fit:%% at least 5 men's cars --> geq 2
< parser/grammar.fit:add_quantity(<pl, geq, 2).
< parser/grammar_contentwords.fit: sem!quantity!comparison!geq.
< parser/grammar_functionwords.fit: sem!quantity!comparison!geq
< parser/grammar_functionwords.fit: sem!quantity!comparison!geq.
< parser/grammar_functionwords.fit: sem!quantity!comparison!geq &
< parser/grammar_functionwords.fit: sem!quantity!comparison!geq &
< parser/grammar_functionwords.fit: sem!quantity!comparison!geq/_
< parser/refres.pl: % to allow anaphoric reference by "the men" and "they"
the count is replaced by "geq 2"
< parser/refres.pl: NewAntecedentConditions = [object(Referent, Lemma,
countable, na, geq, 2)-AntecedentSID|RestAntecedentConditions],
< parser/refres.pl: Element = object(R1, Noun, countable, na, geq, 2) -
_Index1
< utils/drs_to_coreace.pl:conds_text(noun([object(A, Agent, countable, na,
geq, 2)], parts([]), Owner, adjectives([query(A, which)])),
---
> geq:utils/drs_to_coreace.pl:% @param Comp {eq, geq, leq, greater, less}
> geq:utils/drs_to_coreace.pl:% @param Operator is in {eq, geq, leq,
greater, less, exactly, na}
> geq:utils/drs_to_npace.pl:% @param Operator is in {na, eq, leq, geq,
greater, less, exactly}
> geq:utils/owlswrl/drs_to_owlswrl.pl:% @param QType is in {na, eq, geq,
leq, greater, less, exactly}
> geq:utils/owlswrl/drs_to_owlswrl.pl:% @param QType is in {na, eq, geq,
leq, greater, less, exactly}
> parser/grammar_functionwords.fit: sem!quantity!comparison!leq/_
> parser/tokenizer.pl:complete_line([34, First | Input], 34, doublequotes,
['"', '"' | Atomics]) :-
> parser/tokenizer.pl:complete_line([First|Input], 34, doublequotes, ['"',
A, '"'|Atomics]) :-
> parser/tokenizer.pl:complete_string([Next|Input], _, doublequotes, [],
NextC, NextT, Input) :-
> parser/tokenizer.pl:% 'blank', 'alpha', 'number', 'special',
'doublequotes'
> parser/tokenizer.pl:% BUG: rename: doublequotes -> quote
> parser/tokenizer.pl:char_type(_, 34, doublequotes, 34) :- !.
16c15
< utils/drs_to_coreace.pl:surface_determiner(new, geq, Number, [at, least,
Number]).
---
> utils/drs_to_coreace.pl:surface_determiner(new, leq, Number, [at, most,
Number]).
18,23c17,22
< utils/drs_to_npace.pl:get_noun_x(_, new, yes, _, countable, Noun, geq, 1,
[at, least, 1, NounSg]) :- surface_noun(cn, sg, Noun, NounSg).
< utils/drs_to_npace.pl:get_noun_x(_, new, yes, _, countable, Noun, geq,
Number, [at, least, Number, NounPl]) :- Number > 1, surface_noun(cn, pl,
Noun, NounPl).
< utils/is_wellformed.pl: atom(Eq), member(Eq, [na, eq, geq, greater,
exactly]),
< utils/owlswrl/drs_to_owldrs.pl:% @param NegQType is the "opposite"
quantifier type (from {greater, geq})
< utils/owlswrl/drs_to_owldrs.pl:negate_quantifier(less, geq).
< utils/owlswrl/drs_to_owlswrl.pl: member(QType, [eq, geq, na]),
---
> utils/drs_to_npace.pl:get_noun_x(_, new, yes, _, countable, Noun, leq, 1,
[at, most, 1, NounSg]) :- surface_noun(cn, sg, Noun, NounSg).
> utils/drs_to_npace.pl:get_noun_x(_, new, yes, _, countable, Noun, leq,
Number, [at, most, Number, NounPl]) :- Number > 1, surface_noun(cn, pl,
Noun, NounPl).
> utils/is_wellformed.pl: atom(Eq), member(Eq, [leq, less]),
> utils/owlswrl/drs_to_owldrs.pl:% @param QType is a quantifier type from
{leq, less}
> utils/owlswrl/drs_to_owldrs.pl:negate_quantifier(leq, greater).
> utils/owlswrl/drs_to_owlswrl.pl: QNum = 1, QType = leq
26,27c25
< utils/owlswrl/drs_to_owlswrl.pl:make_restr(geq, 1, Property, Class,
'ObjectSomeValuesFrom'(Property, Class)).
< utils/owlswrl/drs_to_owlswrl.pl:make_restr(geq, QNum, Property, Class,
'ObjectMinCardinality'(QNum, Property, Class)) :-
---
> utils/owlswrl/drs_to_owlswrl.pl:make_restr(leq, QNum, Property, Class,
'ObjectMaxCardinality'(QNum, Property, Class)).
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ifi.uzh.ch/pipermail/attempto/attachments/20090405/82e7fd48/attachment-0001.htm>
More information about the attempto
mailing list