Your first homework is the following question. Due date is: Wednesday 1st, March -------------------------------------------------------------------------- Write a function subtree which receives two TERNARY trees and return true if the first tree is a subtree of the second, or false otherwise. (In trees the structure is important, thus a tree could be a subtree in any place). You will use the following datatype. - datatype tree = Empty | Leaf of int | Node of int*tree*tree*tree; - val tree1 = Node(3,Leaf(5), Node(6,Leaf(7),Leaf(4),Empty), Empty); 3 / \ 5 6 / \ 7 4 - val tree2 = Node(13,Node(3,Leaf(5), Node(6,Node (7, Leaf (2), Empty,Empty), Leaf(1), Node(4,Leaf(3),Leaf(4),Leaf(1))), Empty), Leaf(1), Node(12,Leaf(9), Node(6,Leaf(11),Leaf(7),Leaf(4)), Empty)); 13 / | \ 3 1 12 / \ / \ 5 6 9 6 /|\ /|\ 7 1 4 11 7 4 / /|\ 2 3 4 1 - subtree(tree1,tree2); > true