In type theory a typing environment (or typing context) represents the association between variable names and data types.
More formally an environment
\Gamma
\langlex,\tau\rangle
x:\tau
x
\tau
The judgement
\Gamma\vdashe:\tau
e
\tau
\Gamma
For each function body type checks:
\Gamma=\{(f,\tau1 x ... x \taun\to\tau0)|(f,xs,(\tau1,...,\taun),tf,\tau0)\ine\}
Typing Rules Example:
In statically typed programming languages these environments are used and maintained by typing rules to type check a given program or expression.[1]