1. A method for determining isomorphism over natural number node labeled unordered trees, the method comprising: receiving node labeled unordered trees x and y, the node labeled tree received as an input query at a computing device having a processor and a memory; responsive to the input query: executing instructions stored in the memory of the computing device via the processor to establish an individual parameter c, a monadic operation S, and a binary operation #, wherein c, S, and # to describe the node labeled unordered trees x and y; executing instructions stored in the memory of the computing device via the processor to transform the node labeled unordered trees into binary strings f(x) and f(y) using an operation f, wherein the operation f utilizes natural syntactic recursion and the following rules: f(c) → c c; f(S(x)) → c#f(x) #cf(x); f(x#y) → f(x)#f(y), x not a tower #f(x)f(y); f(x#y) → (f(x)#c)#f(y), x a tower #f(x)cf(y); wherein → is a transformation performed by the operation f and the tower is a fully left-associated term; and storing results of the input query as a term in the memory.