function createMatrix($size)
{
    $c = 0;
    $fn = function ($r, $c) use(&$c) {
        return RationalTypeFactory::create($c++, 1);
    };
    $iSize = TypeFactory::createInt($size);
    return MatrixFactory::createFromFunction($fn, $iSize, $iSize, new StringType('rational'));
}
 /**
  * @expectedException InvalidArgumentException
  * @expectedExceptionMessage $cols must be >= 1
  */
 public function testCreateFromFunctionWithColsLessThanOneThrowsException()
 {
     $fn = function ($r, $c) {
         return 1;
     };
     $mA = MatrixFactory::createFromFunction($fn, TypeFactory::createInt(1), TypeFactory::createInt(0));
 }