Assembla home | Assembla project page
 

Input Diffusion

Input diffusion is a specialized case of the variable diffusion.

Variable diffusion

Knowing the limitation of the data-flow with interprocedural calls, I decided to model every action with a variable in the same line. The model is really close to the mathematical definition of functions.

Example:

  $a = "Hello World";
  $b = foo($a);
  $c = $a . $b;

In this example, $a is declared and fixed and $b is a variation of $a and $c is a superset of $a. Which means that if $a were related to an input, $b would be. This makes sense for some cases, but is stupid for others but I think this is still okay to model like that in order to have a maximum bound of the real diffusion

  $a = (int)$_POST['id'];
  $b = increment($a);
  $b = zero($a);