(* Now for the main definitions and theorems *)

Definition f (k : K1.knot) : K2.knot := fst (fg (level k)) k.Definition g (k : K2.knot) : K1.knot := snd (fg (level k)) k.Definition fF : TF.F K1.predicate -> TF.F K2.predicate :=
  f_F' g.Definition gF : TF.F K2.predicate -> TF.F K1.predicate :=
  g_F' f.

Lemma f_squash : forall n F1, f (K1.squash (n, F1)) = K2.squash (n, fF F1).