Goal:
    __x3 : Z  __x2 : Z  __x1 : Z
  ============================
   (let __wit := [] in
    let __varmap := VarMap.Branch (VarMap.Elt __x2) __x1 (VarMap.Elt __x3) in
    let __ff :=
      Tauto.A Tauto.isProp
        {|
          RingMicromega.Flhs :=
            EnvRing.PEadd (EnvRing.PEX 1)
              (EnvRing.PEadd (EnvRing.PEX 2) (EnvRing.PEX 3));
          RingMicromega.Fop := RingMicromega.OpEq;
          RingMicromega.Frhs :=
            EnvRing.PEadd (EnvRing.PEadd (EnvRing.PEX 3) (EnvRing.PEX 1))
              (EnvRing.PEX 2)
        |} tt in
    __x1 + (__x2 + __x3) = __x3 + __x1 + __x2)


DEBUG:Going to execute:
let __varmap := fresh "__varmap" in
           let __ff := fresh "__ff" in
           intros __wit __varmap __ff; exact
            (ZMicromega.ZTautoChecker_sound __ff __wit
               (eq_refl <: ZMicromega.ZTautoChecker __ff __wit = true)
               (VarMap.find 0 __varmap))