vProve :: String -> String -> String -> String -> String -> String -> String -> Value
vProve _I _D _X _M m i xs = rProve
  (var _I)
  (s2n _D)
  (fbind _X "i")
  (fbind2 _M "i" "x")
  (fbind2 m "i" "x")
  (var i)
  (var xs)
vProve :: String -> String -> String -> String -> String -> String -> String -> Value
vProve _I _D _X _M m i xs = rProve
  (var _I)
  (s2n _D)
  (fbind _X "i")
  (fbind2 _M "i" "x")
  (fbind2 m "i" "x")
  (var i)
  (var xs)
vProve _I _D _X _M m i xs = rProve
  (var _I)
  (s2n _D)
  (fbind _X "i")
  (fbind2 _M "i" "x")
  (fbind2 m "i" "x")
  (var i)
  (var xs)