Prolog Tree Traversal
问题 Good Day, I am trying to write a Prolog program that given a tree with a functor of a: start(a(f,2,9), X). I want it to square any values inside so that it yields: X = a(f,4,81). I have code that squares numbers in a list already that works. Here's what I have so far: start([],[]). start(Tree, []) :- Tree =.. [P|C], write(P), nl, write(C), nl, squareMe([P|C], []). squareMe([X|T], [Y|Result]) :- % I think the problem is here atom(X), Y=X, squareMe(T, Result). squareMe([X|T], [Y|Result]) :-