假设我有一个包含三个符号的列表:
l:`s1`s2`s3
有一个生成n*(n+1)/2个排列的q-方法,请问该如何生成这个排列列表?
(`s1;`s1),(`s1;`s2),(`s1;`s3),(`s2;`s2),(`s2;`s3),(`s3;`s3)
在相关矩阵的上下文中,我想要包括对角线在内的相关矩阵的全部上三角部分。
当然,我的初始列表大小将超过3,因此我希望有一个通用的函数来执行此操作。
我知道如何生成对角元素:
q) {(x,y)}'[l;l]
(`s1`s1;`s2`s2;`s3`s3)
但我不知道如何生成非对角线元素。