Creating A Random Quadratic Form¶

sage.quadratic_forms.random_quadraticform.
random_quadraticform
(R, n, rand_arg_list=[])¶ Create a random quadratic form in \(n\) variables defined over the ring \(R\).
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 methodR.random_element()
.INPUT:
 \(R\) – a ring.
 \(n\) – an integer \(\ge 0\)
rand_arg_list
– a list of at most 3 arguments which can be taken byR.random_element()
.
OUTPUT:
A quadratic form over the ring \(R\).
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 ]

sage.quadratic_forms.random_quadraticform.
random_quadraticform_with_conditions
(R, n, condition_list=[], rand_arg_list=[])¶ Create a random quadratic form in \(n\) variables defined over the ring \(R\) satisfying a list of boolean (i.e. True/False) conditions.
The conditions \(c\) appearing in the list must be boolean functions which can be called either as
Q.c()
orc(Q)
, whereQ
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 methodR.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 ]

sage.quadratic_forms.random_quadraticform.
random_ternaryqf
(rand_arg_list=[])¶ Create a random ternary 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 methodR.random_element()
.INPUT:
rand_arg_list
– a list of at most 3 arguments which can be taken byR.random_element()
.
OUTPUT:
A ternary quadratic form.
EXAMPLES:
sage: random_ternaryqf() ##RANDOM Ternary quadratic form with integer coefficients: [1 1 4] [1 1 1] sage: random_ternaryqf([1, 2]) ##RANDOM Ternary quadratic form with integer coefficients: [1 0 1] [1 1 1] sage: random_ternaryqf([10, 10, "uniform"]) ##RANDOM Ternary quadratic form with integer coefficients: [7 8 2] [0 3 6]

sage.quadratic_forms.random_quadraticform.
random_ternaryqf_with_conditions
(condition_list=[], rand_arg_list=[])¶ Create a random ternary quadratic form satisfying a list of boolean (i.e. True/False) conditions.
The conditions \(c\) appearing in the list must be boolean functions which can be called either as
Q.c()
orc(Q)
, whereQ
is the random ternary 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 methodR.random_element()
.EXAMPLES:
sage: Q = random_ternaryqf_with_conditions([TernaryQF.is_positive_definite], [5, 5]) sage: Q ## RANDOM Ternary quadratic form with integer coefficients: [3 4 2] [2 2 1]