how to make pesto...

<graphviz dot right>

digraph G {

  bgcolor = "grey93";
  rankdir="LR";
  subgraph ingredients {
      graph [shape=circle];
      node [shape=circle];
      basil;
      "pine nuts";
      parmesan;
      garlic;
      "olive oil";
      intA;
      intB;
      pesto;
  }
  subgraph transitions {
      node [shape=rect];
      blend;
      grate;
      mix;
  }
  basil -> blend;
  garlic -> blend;
  "pine nuts" -> blend -> intA -> mix;
  parmesan -> grate -> intB -> mix;
  "olive oil" -> mix;
  mix -> pesto [label="until mixed"];

}

</graphviz>

NOTE: pre- and postconditions are not included above.