+++ /dev/null
-(*#* #stop file *)
-
-Require Arith.
-
- Tactic Definition Arith0 x :=
- Replace (S x) with (plus (1) x); XAuto.
-
- Tactic Definition Arith1 x :=
- Replace x with (plus x (0)); [XAuto | Auto with arith].
-
- Tactic Definition Arith1In H x :=
- XReplaceIn H x '(plus x (0)).
-
- Tactic Definition Arith2 x :=
- Replace x with (plus (0) x); XAuto.
-
- Tactic Definition Arith3 x :=
- Replace (S x) with (S (plus (0) x)); XAuto.
-
- Tactic Definition Arith3In H x :=
- XReplaceIn H '(S x) '(S (plus (0) x)).
-
- Tactic Definition Arith4 x y :=
- Replace (S (plus x y)) with (plus (S x) y); XAuto.
-
- Tactic Definition Arith4In H x y :=
- XReplaceIn H '(S (plus x y)) '(plus (S x) y).
-
- Tactic Definition Arith4c x y :=
- Arith4 x y; Rewrite plus_sym.
-
- Tactic Definition Arith5 x y :=
- Replace (S (plus x y)) with (plus x (S y)); Auto with arith.
-
- Tactic Definition Arith5In H x y :=
- XReplaceIn H '(S (plus x y)) '(plus x (S y)); Auto with arith.
-
- Tactic Definition Arith5' x y :=
- Replace (plus x (S y)) with (S (plus x y)); Auto with arith.
-
- Tactic Definition Arith5'In H x y :=
- XReplaceIn H '(plus x (S y)) '(S (plus x y)); Auto with arith.
-
- Tactic Definition Arith5'c x y :=
- Arith5' x y; Rewrite plus_sym.
-
- Tactic Definition Arith6In H x y :=
- XReplaceIn H '(plus x (S y)) '(plus (1) (plus x y));
- [ Idtac | Simpl; Auto with arith ].
-
- Tactic Definition Arith7 x :=
- Replace (S x) with (plus x (1));
- [ Idtac | Rewrite plus_sym; Auto with arith ].
-
- Tactic Definition Arith7In H x :=
- XReplaceIn H '(S x) '(plus x (1)) ;
- [ Idtac | Rewrite plus_sym; Auto with arith ].
-
- Tactic Definition Arith7' x :=
- Replace (plus x (1)) with (S x);
- [ Idtac | Rewrite plus_sym; Auto with arith ].
-
- Tactic Definition Arith8 x y :=
- Replace x with (plus y (minus x y));
- [ Idtac | Auto with arith ].
-
- Tactic Definition Arith8' x y :=
- Replace (plus y (minus x y)) with x;
- [ Idtac | Auto with arith ].
-
- Tactic Definition Arith9'In H x :=
- XReplaceIn H '(S (plus x (0))) '(S x).
-
- Tactic Definition Arith10 x :=
- Replace x with (minus (S x) (1));
- [ Idtac | Simpl; Rewrite <- minus_n_O; Auto with arith ].