On Tue, 18 Jan 2005, Szeredi Peter wrote:
Tovabba a
term-kifejtesnek koszonheto az is, hogy irhato olyan, hogy
KT1 /\ \KT2, mert az operatorok tipusa ezt nem tenne lehetove (a \ itt
vegig a clpfd-beli, es nem a beepitett \ operator).
A fentiek fenyeben ezzel nem tudok egyeterteni (ti., hogy a
term-kifejtesnek koszonheto lenne a zarojelezes), de az is lehet, hogy csak
nem ertem, mit mondasz.
Itt en erre gondoltam:
| ?- use_module(library(clpfd)).
| ?- write_canonical(\(2..4) /\ (7..9)).
/\(\(..(2,4)),..(7,9))
yes
| ?- expand_term(\(2..4) /\ (7..9), T).
T = (\ (2..4))/\(7..9) ? ;
no
| ?- expand_term((2..4)/\ \(7..9), T).
T = (2..4)/\(\ (7..9)) ? ;
no
Teny az, hogy a SICStus clpfd konyvtara atdefinialja a
\ operatort, ami
nagyon szerencsetlen dolog. Lehet, hogy ez is megzavart teged (engem
biztosan).
Igen, ez mindenkeppen megzavart. Vagyis inkabb a precedencia
megvaltoztatasa az, ami megzavart.
Jozsi