[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