Create a random quadratic form in variables defined over the ring
.
The last (and optional) argument rand_arg_list is a list of at most 3 elements which is passed (as at most 3 separate variables) into the method R.random_element().
INPUT:
OUTPUT:
A quadratic form over the ring .
EXAMPLES:
sage: random_quadraticform(ZZ, 3, [1,5]) ## RANDOM
Quadratic form in 3 variables over Integer Ring with coefficients:
[ 3 2 3 ]
[ * 1 4 ]
[ * * 3 ]
sage: random_quadraticform(ZZ, 3, [-5,5]) ## RANDOM
Quadratic form in 3 variables over Integer Ring with coefficients:
[ 3 2 -5 ]
[ * 2 -2 ]
[ * * -5 ]
sage: random_quadraticform(ZZ, 3, [-50,50]) ## RANDOM
Quadratic form in 3 variables over Integer Ring with coefficients:
[ 1 8 -23 ]
[ * 0 0 ]
[ * * 6 ]
Create a random quadratic form in variables defined over the ring
satisfying a list of boolean (i.e. True/False) conditions.
The conditions appearing in the list must be boolean functions which
can be called either as Q.c() or c(Q), where Q is the random
quadratic form.
The last (and optional) argument rand_arg_list is a list of at most 3 elements which is passed (as at most 3 separate variables) into the method R.random_element().
EXAMPLES:
sage: Q = random_quadraticform_with_conditions(ZZ, 3, [QuadraticForm.is_positive_definite], [-5, 5])
sage: Q ## RANDOM
Quadratic form in 3 variables over Integer Ring with coefficients:
[ 3 -2 -5 ]
[ * 2 2 ]
[ * * 3 ]