Como simplificar equações de álgebra representadas como lista de lista

Com o Prolog, quero simplificaralgebra expression representado como lista de lista:

algebra equation

f = 3x+2

lista da lista

[[3,1],[2,0]]

3 e2 são coeficientes
1 e0 são expoentes

sso deve ser óbvi

Estou procurando algumas dicas ou sugestões sobre como codificar as simplificações para este exemplo:

f = 3x+2x+1+2
[[3,1],[2,1],[1,0],[2,0]]

simplified:

f = 5x+3
[[5,1],[3,0]]

Tentei algumas funções integradas, mas não tive a idéia correta sobre como usá-la

questionAnswers(3)

yourAnswerToTheQuestion