!set title=Solución de sistema homogéneo

!goto $wims_read_parm

:present
Tenemos un sistema lineal homogéneo con incógnitas (x,y,z):
<p><center><table border=0>
 <tr><td rowspan=4>$m_leftbrace4
 <td align=center>a<sub>11</sub>x +
  a<sub>12</sub>y + a<sub>13</sub>z = 0
 <tr><td align=center>a<sub>21</sub>x +
  a<sub>22</sub>y + a<sub>23</sub>z = 0
 <tr><td align=center>...
 <tr><td align=center>a<sub>m1</sub>x +
  a<sub>m2</sub>y + a<sub>m3</sub>z = 0
 </table></center> <p>
<p>
El objetivo es determinar si el vector v<sub>1</sub>&nbsp;=&nbsp;($val11)
es una solución del sistema.
<p>
Además de cuestiones generales sobre el sistema, puedes preguntar si los siguientes vectores son soluciones:
<p><center>
	v<sub>2</sub> = ($val12) , v<sub>3</sub> = ($val13) ,
	v<sub>4</sub> = ($val14) .
</center> <p>
!exit

:form
 El vector v<sub>1</sub>
 !formselect ans1 list ??,1,2 prompt ????,es, no es
 una solución del sistema.
 !exit

:ans
 Crees que v<sub>1</sub>
 !item $ans1 of es, no es
 una solución del sistema.
 !ifval $ans1=$good1
  <font color=green>Correcto</font>.
 !else
  <font color=red>Respuesta errónea</font>.
  <p>
  De hecho, los vectores v<sub>1</sub> y v<sub>$[$val15+1]</sub> son
  proporcionales. Como el sistema es homogéneo, v<sub>1</sub> y
  v<sub>$[$varl15+1]</sub> deben ser ambos soluciones o ninguno ser
  solución.
 !endif
 !exit

:init
objname=this linear system
hint=El conjunto de soluciones de un sistema homogéneo es un espacio vectorial.

sh=!shuffle 10
sh1=!item 1 of $sh
sh2=!item 2 of $sh
n1=!item $sh1 of -5,-4,-3,-2,-1,1,2,3,4,5
n2=!item $sh2 of -5,-4,-3,-2,-1,1,2,3,4,5
range=10
random=random($[2*$range+1])-$range
pari_header=rk=0; while(rk==0,v=matrix(1,3,x,y,$random);rk=matrank(v));\
	v1=$n1*v; v2=$n2*v;\
	rk=0; while(rk<2,v3=matrix(1,3,x,y,$random); rk=matrank(concat(v~,v3~)));\
	rk=0; while(rk<2,v4=matrix(1,3,x,y,$random); rk=matrank(concat(v~,v4~)));
pariout=!exec pari print(v1)\
	print(v2)\
	print(v3)\
	print(v4)
!distribute lines $pariout into v1,v2,v3,v4
val11=!nospace $v1
sh=!shuffle 3
v=!lines $sh of $v2\
$v3\
$v4
val12=!line 1 of $v
val13=!line 2 of $v
val14=!line 3 of $v
val15=!positionof item 1 in $sh
good1=!randitem 1,2

m_=!randint 2,5
!if $m_!=3
 a_=de una matriz no cuadrada no tiene sentido
 w_=-1
!else
 a_=de la matriz de los coeficientes = ??
 w_=0
!endif

parm1=rank g of the matrix of coefficients\
 Rango de la mtriz de los coeficientes\
 El rango de la matriz de los coeficientes es igual a ??
val1=2
weight1=0
parm2=determinant of the matrix of coefficients\
 Determinante de la matriz de los coeficientes\
 El determinante $a_
val2=0
weight2=$w_
parm3=trace of the matrix of coefficients\
 Traza de la matriz de los coeficientes\
 La traza $a_
val3=!randint -20,20
weight3=$w_
parm4=number of equations\
 Número de cuaciones del sistema\
 Este sistema tiene = ?? ecuaciones
val4=$m_
weight4=0
parm5=integer coefficients\
 Son los coeficientes todos enteros\
 Los coeficientes del sistema son todos enteros
weight5=0
parm6=test of solution v<sub>2</sub>\
 Es v<sub>2</sub> una solución\
 v<sub>2</sub> ?? una solución del sistema
val6=no es
weight6=0
parm7=test de solution v<sub>3</sub>\
 Es v<sub>3</sub> una solución\
 v<sub>3</sub> ?? una solución del sistema
val7=no es
weight7=0
parm8=test de solution v<sub>4</sub>\
 Es v<sub>4</sub> una solución\
 v<sub>4</sub> ?? una solución del sistema
val8=is not
weight8=0

parmcnt=8
anscnt=1
minask=1

weight$[$val15+5]=1
!if $good1=1
 val$[$val15+5]=is
!endif

!exit

:info
!if $ask iswordof 2 3 and 4 notitemof $gotlist
  weight$ask=-1
  comment=¡Has pedido el valor del determinante/traza de una matriz sin saber si la matriz\
  es cuadrada!
!endif
!exit

:final
 !bound ans1 within 1,2 default ??
 !ifval $ans1=$good1
  thisscore=1
 !endif
!exit

