Definition dnQ {b} (phi : form b) : form b := (phi --> Q) --> Q.
Fixpoint trans {b} (phi : form b) : form b :=
match phi with
| Impl phi1 phi2 => Impl (trans phi1) (trans phi2)
| All x phi => All x (trans phi)
| Pr s t => dnQ (Pr s t)
| Q =>  Q
| Fal => Q
end.

Lemma trans_trans b (phi : form b) A :
A ⊢I ((dnQ (trans phi)) --> trans phi).