<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def convertASTtoThreeAddrForm(ast):
 """Convert an AST to a three address form. Three address form is (op, reg1, reg2, reg3), where reg1 is the destination of the result of the instruction. I suppose this should be called three register form, but three address form is found in compiler theory. """

    return [(node.value, node.reg) + tuple([c.reg for c in node.children])
            for node in ast.allOf('op')]