|
Size: 554
Comment:
|
Size: 1012
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| = Sage Days 30 Coding Sprint Projects = <<TableOfContents>> '''For the main SD 30 wiki page go [[days30|here]]''' Below a list of proposed projects. == Combinatorics == == Number Theory == * <<Anchor(nt1)>> Generate centered digit set for multidimensional radix representation * <<Anchor(nt2)>> Implement Scheicher & Thuswaldner neighbor-finding algorithm * <<Anchor(nt3)>> Visualizing attractors of iterated function systems and other fractal sets * <<Anchor(nt4)>> Update Integer Vectors internal representation in Sage |
def quantum_grassmannian_poset(p,m,k): p=Partition(p) D=DiGraph() D.add_vertex(p) queue=[p] seen={p:0} while queue: p=queue.pop() if seen[p]==m+k-1: continue if p==[]: up_list=[Partition([1])] else: up_list=p.up_list() for q in up_list: s=SkewPartition([q,p]) r=s.cells() u=[q.content(*t)+k%(m+k) for t in r] new_edge=False if q.arm_length(0,0) <= m-1 and q.length() <= k: new_edge=True if q.arm_length(0,0) == m-1 and q.length() == k+1: new_edge=True cells = q.rim() for c in cells: q = q.remove_cell(c[0]) if new_edge is True: D.add_edge(p,q,u[0]) if q not in seen: seen[q]=seen[p]+1 queue.append(q) return D |
def quantum_grassmannian_poset(p,m,k):
- p=Partition(p)
D=DiGraph() D.add_vertex(p) queue=[p] seen={p:0} while queue:
- p=queue.pop() if seen[p]==m+k-1:
- continue
- up_list=[Partition([1])]
- up_list=p.up_list()
s=SkewPartition([q,p]) r=s.cells() u=[q.content(*t)+k%(m+k) for t in r] new_edge=False if q.arm_length(0,0) <= m-1 and q.length() <= k:
- new_edge=True
- new_edge=True cells = q.rim() for c in cells:
- q = q.remove_cell(c[0])
- D.add_edge(p,q,u[0]) if q not in seen:
- seen[q]=seen[p]+1 queue.append(q)
- p=queue.pop() if seen[p]==m+k-1:
