(*========================================================== VERSION AUGUST 08  TOPOLOGICAL FMAPS, HMAPS -  WITH TAGS AND EMBEDDINGS  PART 2 : SETS OF DARTS, PATHS, ORBITS  WITH NOETHERIAN INDUCTION ON A BIJECTION f WITH SIGNATURES AND MODULES  VERSION WITH set AND card: OK  NEW VERSION, COMPLETED WITH DIRECT period, REULTS ABOUT orbits AND rem: OK (August 2008) ============================================================*)
Require Export Jordan1.
Require Euclid.
Require Compare.
Require Recdef.
Require Arith.
(*========================================================= SETS OF DARTS  FOR NOETHERIAN INDUCTIVE REASONINGS ==========================================================*)
Inductive set:Set:=
Vs : set | Is : set -> dart -> set.
Fixpoint exds(s:set)(z:dart){struct s}:Prop:=
match s with
Vs => False
| Is s0 x => x=z \/ exds s0 z
end.
(* IF NO DART IS IN s, s IS Vs: *)
(* SUPPRESSION OF ALL OCCURRENCES of z: *)
Fixpoint Ds(s:set)(z:dart){struct s}:set:=
match s with
Vs => Vs
| Is s0 x =>
if eq_dart_dec x z then (Ds s0 z)
else Is (Ds s0 z) x
end.

Lemma exds_Ds:forall(s:set)(x z:dart),
x <> z ->
(exds s z <-> exds (Ds s x) z).