title: How to create vector circulant matrix in Sage?
body: <p>Given the first row vector <code>R0 = [a0,a1,...,a(n-1)]</code> and a specific vector  <code>V</code>, I would like to create a "vector circulant matrix" in SAGE, which will be constructed as follows. </p>
  
  <p>The rows of the matrix will be </p>
  
  <pre><code>R0=R0; R1=p(R0); R2=p(R1), ..., R(n-1)=p(R(n-2))
  </code></pre>
  
  <p>where <code>p</code> is a map which takes, for example row <code>Ri = [r0,r1,...,r(n-1)]</code> and 
  makes it <code>[0, r0, r1,...,r(n-2)]+r(n-1)*V</code></p>
  
  <p>Note that I tried to write everything in the language of Sage. And this is not like the classical circulant, Toeplitz or Hankel matrix constructions.</p>
  
  <p>(n, R0, and the vector V will be defined by the user at the beginning)</p>
  
  <p>How to write a simple program that will give me the matrix  defined  above?</p>