fact: Fixpoint remove (k : key) (s : farray) {struct s} : farray := match s with | nil => nil | (k',x) :: l => match compare k k' with | LT _ => s | EQ _ => l | GT _ => (k',x) :: remove k l end end.
imports: Bool OrderedType SMT_classes ProofIrrelevance