I am really struggling to build intuition with regards to how to do this sort of question.
The abstract: A graph is a set (whose elements are called nodes) together with a symmetric relation on that set (related nodes are said to have an edge between them). A binary tree is a graph which has a distinguished node, called the root, which is connected to two other (distinct) nodes, and every other node is connected to three distinct nodes or one (distinct) node.
The question: How would I define a suitable set of predicate symbols and function symbols together with their arities that give rise to a first order language suitable for specifying binary trees?