La domanda è la seguente. Generalmente quando uno ha un termine come , possiamo eliminare il forall applicando questo termine a un tipo, come esempio .( Λ X . t ) [ T ] → t [ X : = T ]
Supponiamo ora che questa sia una freccia e che vogliamo dargli un argomento, quindi dovremmo applicare questo termine al tipo corretto in modo che possa ricevere tale argomento. Questo è ciò che chiedo se posso automatizzare: è possibile costruire una funzione prendendo due termini e restituendo un tipo tale che ci dia il tipo necessario per essere sostituito da in tale che può accettare l'argomento ?f < Λ X . t > < r > X t t r
Qualche esempio:
.