|
spad )abbrev package CHOO Choose
Choose(X:SetCategory): with
choose:(List X,NonNegativeInteger) -> List List X
== add
choose(S,k) ==
j:List NonNegativeInteger := [i for i in 1..k]
R:List List X := [[S(j(i)) for i in 1..k]]
n:Integer := k
while n>0 and j(n)+k-n<#S repeat
j(n):=j(n)+1
for i in n..k-1 repeat j(i+1):=j(i)+1
R:=concat(R,[S(j(i)) for i in 1..k])
n:=k; while j(n)+k-n>=#S and n>1 repeat n:=n-1
if binomial(#S,k)~=#R then error "error in choose"
return R
spad Compiling FriCAS source code from file
/var/lib/zope2.10/instance/axiom-wiki/var/LatexWiki/5705694974207640903-25px001.spad
using old system compiler.
CHOO abbreviates package Choose
------------------------------------------------------------------------
initializing NRLIB CHOO for Choose
compiling into NRLIB CHOO
compiling exported choose : (List X,NonNegativeInteger) -> List List X
Time: 0.05 SEC.
(time taken in buildFunctor: 0)
;;; *** |Choose| REDEFINED
;;; *** |Choose| REDEFINED
Time: 0 SEC.
Cumulative Statistics for Constructor Choose
Time: 0.05 seconds
finalizing NRLIB CHOO
Processing Choose for Browser database:
--->-->Choose(constructor): Not documented!!!!
--->-->Choose((choose ((List (List X)) (List X) (NonNegativeInteger)))): Not documented!!!!
--->-->Choose(): Missing Description
; compiling file "/var/aw/var/LatexWiki/CHOO.NRLIB/CHOO.lsp" (written 04 APR 2022 07:55:38 PM):
; /var/aw/var/LatexWiki/CHOO.NRLIB/CHOO.fasl written
; compilation finished in 0:00:00.027
------------------------------------------------------------------------
Choose is now explicitly exposed in frame initial
Choose will be automatically loaded when needed from
/var/aw/var/LatexWiki/CHOO.NRLIB/CHOO
fricas choose([r[q] for q in 1..4|q~=3],2)
Type: List(List(Symbol))
fricas choose([r[q] for q in 1..4|q~=3],2).2
Type: List(Symbol)
fricas choose([1],1)
Type: List(List(PositiveInteger ?))
fricas choose([1,2],1)
Type: List(List(PositiveInteger ?))
fricas choose([1,2],2)
Type: List(List(PositiveInteger ?))
fricas choose([1,2,3],1)
Type: List(List(PositiveInteger ?))
fricas choose([1,2,3],2)
Type: List(List(PositiveInteger ?))
fricas choose([1,2,3],3)
Type: List(List(PositiveInteger ?))
fricas choose([x,y,z,w],1)
fricas choose([x,y,z,w],2)
fricas choose([x,y,z,w],3)
fricas choose([x,y,z,w],4)
|