That looks plausible, but I can't tell if that's really a PLN question, or if its something the evaluator is supposed to handle.
Right now, the evaluator ignores EquivalenceLink, it only handles EqualLink and IdenticalLink.
When it evaluates this, it executes the two sides of the EqualLink, and compares the result of the execution. What you have written is not executable, because there are no arguments supplied to either of the lambdas.
So, instead, you seem to have something that PLN is supposed to handle -- whenever it sees one side of the equivalence, it can replace it by the other side, during its search. Or something like that. The semantics of what you want to have happen here is unclear. What is supposed to happen?
Anything that strays outside of the bounds of what is explicitly mentioned on the wiki pages (i.e.
http://wiki.opencog.org/w/LambdaLink) will almost surely result in errors or lead down code paths where nothing is implemented.