# Monotype Derivation

Write a proof tree for the following judgement:

$\Gamma \vdash g\ (f\ (x * y)) : Int$

Let $g : Bool \rightarrow Int$ and $f : Int \rightarrow Bool$ and $x$ and $y$ both be of type $Int$.

Each line of your tree should have the following components:

1. a number followed by a period to indicate its depth in the tree. 0 is the root.
2. a Gamma, in the form G, G$n$ (where $n$ is an integer) or as a set of variable type assignments.
3. The |- operator.
4. An expression.
5. The : operator.
6. A type name. Type names are capitalized.
7. A rule name in parenthesis.

If you use G or G1, etc. in your proof tree, you must follow the tree with their expanded out definitions.

The starter code shows a valid tree for a proof of $\Gamma \vdash x + y : Int$.

Here are the monotype rules.

# Proof Tree Editor

Score: 18.21%
$\frac{\frac{}\Gamma\vdash x : Int} \textstyle \mathrm{V\small{AR}} \quad \frac{}\Gamma\vdash y : Int} \textstyle \mathrm{V\small{AR}}}\Gamma\vdash x + y : Int}\textstyle \mathrm{B\small{INOP}$