2. L1: Named Terms
import LeanLambda.L0set_option doc.verso true
The second layer restores the syntax that we normally write on paper: variables
have names, and lambda abstractions bind names. The semantics of this layer is
still given by L0; named terms are translated to de Bruijn terms before we
state alpha equivalence and beta reduction.