Oppure

Loading
29/11/16 13:24
Ilgof
Buongiorno è da giorni che ci provo ma non riesco...
I monomi devono essere rappresentati da termini siffatti: 
m(Coefficient, TotalDegree, VarsPowers) 
per i quali si pu`o scrivere il predicato: 
is_monomial(m(_C, TD, VPs)) :- 
integer(TD), 
TD >= 0, 
is_list(VPs). 
Tralasciamo al momento come controllare Coefficient. La lista VarsPowers contiene termini come il 
seguente: 
v(Power, VarSymbol) 
per i quali possiamo scrivere il predicato: 
is_varpower(v(Power, VarSymbol)) :- 
integer(Power), 
Power >= 0, 
atom(VarSymbol). 

Chi riuscirebbe a risolvermi il Predicato as_monomials(Expression, Monomial) cioè : 
Il predicato as_monomials `e vero quando Monomial `e il termine che rappresenta il monomio risultante del parsing dell'espressione Expression.
Esempio

?-as_monomials (3*y*w*t^3, M).
M = m(3, 5, [v(3, t), v(1, w), v(1, y)].

E spiegarmi il motivo?
aaa