(* upwards-closed *)
  Instance minAlg_uSA:
    @UpwardsClosedSeparationAlgebra _ nat_geR min_Join.(* downwards-closed *)
  Instance minAlg_dSA:
    @DownwardsClosedSeparationAlgebra _ nat_geR min_Join.(* Increasing *)
  Instance minAlg_increasing:
    @IncreasingSeparationAlgebra _ nat_geR min_Join.(*Residual*)
  Instance minAlg_residual:
    @ResidualSeparationAlgebra _ nat_geR min_Join.(* Unital *)
  Instance minAlg_unital:
    @UnitalSeparationAlgebra _ nat_geR min_Join.(** *Sum Algebra on NAT*)

  Inductive sum_Join: nat -> nat -> nat -> Prop:=
  |sum_j x y z: x + y = z -> sum_Join x y z.(** *Sum Algebra on NAT*)

  Inductive sum_Join: nat -> nat -> nat -> Prop:=
  |sum_j x y z: x + y = z -> sum_Join x y z.Definition sumAlg: @SeparationAlgebra _ sum_Join.(* upwards-closed*)
  Instance sumAlg_uSA:
    @UpwardsClosedSeparationAlgebra _ nat_geR sum_Join.(* downwards-closed*)
  Instance sumAlg_dSA:
    @DownwardsClosedSeparationAlgebra _ nat_geR sum_Join.

(* Specifications: *)
Lemma sumAlg_zero_decreasing: @increasing nat nat_geR sum_Join 0.
Lemma sumAlg_zero_decreasing_only: forall x, @increasing nat nat_geR sum_Join x -> x = 0.