7
$\begingroup$

Question: What free software can I use to solve a system of linear equations $M\mathbf{x}=\mathbf{y}$ where the entries of $\mathbf{y}$ vary with an unknown quantity $n$?

Presumably I could do this in Maple or Mathematica, but I don't have access to these packages at this time.

Motivation: In an attempt to answer my question here, I've set up a system of linear equations where:

  • $M$ is a $30 \times 27$ $(0,1)$-matrix.
  • $\mathbf{x}$ is a vector of length $27$, which I'd like to attempt to solve for (the entries represent the number of symbols of a given type in a given block in my problem). If this method were to work, there should be no solutions.
  • $\mathbf{y}$ is a vector of length $27$, where the entries are either $0$, $(n-2k)^2$, $(n-2k)k$, or $k^2$, where $k=\lfloor n/3 \rfloor+1$.

I can solve this in GAP using SolutionMat for a given value of $n$. But I would like to do it symbolically, which would instead result in a proof for all $n$. I don't believe this is possible in GAP (since x:=Indeterminate(Rationals,"x"); followed by SolutionMat([1],[x]); returns an error).

$\endgroup$
2
  • $\begingroup$ Are there any bounds for values of k and n, and for the entries of x? Also, are they integers? $\endgroup$ Commented May 10, 2013 at 22:11
  • $\begingroup$ For my problem they're arbitrary positive integers, but GAP didn't find any non-integer solutions for small $n$, so I don't think there's any solutions (let alone integral solutions). There are bounds for the entries of $\mathbf{x}$ (they can't be more than $k^2$). I'd like to find that there's no solution for any value of $n \geq 1$. $\endgroup$ Commented May 10, 2013 at 22:14

4 Answers 4

7
$\begingroup$

Try Sage. You can use it through a web browser even.

$\endgroup$
1
  • 1
    $\begingroup$ I got this to work fairly easily (I downloaded the whole 630MB package). I used the method described here, var('x,y,z,a'), etc., which says I'm using maxima through sage. $\endgroup$ Commented May 11, 2013 at 12:29
5
$\begingroup$

You can try octave. It is pretty handy and easy to use. It is an opensource version of MATLAB. It is not completely clear from your question, if you want to solve the linear system with $n$ being an unknown quantity/variable(i.e., treating $n$ as a symbol) or if you want to solve the linear system by letting $n$ take on different values. Either way, if you want to use $n$ as an unknown variable, then you should use syms to treat $n$ as a symbol.

$\endgroup$
2
$\begingroup$

You should give Sequalator a try. It is capable of solving thousands of Linear Simultaneous Equations with great precision and speed. On my mediocre laptop it is able to solve 1000 equations just below a second.

EDIT: I am the developer of Sequalator.

$\endgroup$
0
1
$\begingroup$

If you are familiar with Python programming, you can try SymPy (http://docs.sympy.org/latest/index.html) and see how far you can go with it.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .