Normalization by realizability also evaluates
For those of us that generally live in the world of syntax, semantic 
proof methods such as realizability or logical relations / 
parametricity sometimes feel like magic. Why do they work? At which 
point in the proof is "the real work" done? 
 
Bernardy and Lasson express realizability and parametricity models as 
syntactic model -- but the abstraction/adequacy theorems are still 
explained as meta-level proofs. Hoping to better understand the proof 
technique, we look at those theorems as programs themselves. How does 
a normalization proof using realizability actually computes those 
normal forms? 
 
This detective work is an early stage and we propose a first attempt 
in a simple setting. Instead of arbitrary Pure Type Systems, we use 
the minimal negative propositional logic (arrows only). Instead of 
starting from the simply-typed lambda-calculus, we work on 
sequent-style terms in a simple subset of the Curien-Herbelin 
L calculus.