With[{x=x0, y=y0, ...}, expr]
specifies that in expr occurrences of the symbols x, y, ... should be replaced by , , ....


  • With allows you to define local constants.
  • With replaces symbols in expr only when they do not occur as local variables inside scoping constructs.
  • You can use With[{vars}, body/;cond] as the right-hand side of a transformation rule with a condition attached.
  • With has attribute HoldAll.
  • With constructs can be nested in any way, with inner variables being renamed if necessary.
  • With is a scoping construct that implements read-only lexical variables.
New in 2
New to Mathematica? Find your learning path »
Have a question? Ask support »