built in operator: pick

    description:
        pick[n] sp
        pick n kets from the given sp, with no duplication
        currently the order is not preserved, in future we may change this
        if n == 0, return |>

    examples:
        -- n is zero, so return don't know ket
        pick[0] range(|1>, |10>)
            |>
        
        pick[3] split |a b c d e f g h>
            |c> + |a> + |e>

        pick[10] range(|1>, |4096>)
            |1203> + |700> + |3564> + |198> + |3902> + |1609> + |3085> + |1368> + |104> + |854>

        ket-sort pick[10] range(|1>, |4096>)
            |688> + |708> + |1499> + |1569> + |1893> + |2988> + |3133> + |3144> + |3420> + |3644> 

    see also:
        pick-elt, spick-elt, weighted-pick-elt, ket-sort

Home