Instance pa_gej : @Perm_alg _ ghost_elem_join.
Instance Perm_ghost : Perm_alg ghost.
Instance Sep_ghost : Sep_alg ghost.
Definition rmap' := ((address->resource) * ghost)%type.
Definition preds_fmap (f g:(pred rmap)->(pred rmap)) (x:preds) : preds :=
match x with SomeP A ls => SomeP A (fmap (fpi _) f g ls) end.

(* Specifications: *)
Lemma preds_fmap_id : preds_fmap (id (pred rmap)) (id (pred rmap)) = id preds.
Lemma preds_fmap_comp : forall f1 f2 g1 g2,
preds_fmap g1 g2 oo preds_fmap f1 f2 = preds_fmap (g1 oo f1) (f2 oo g2).