schubmult 1.2.3__tar.gz → 1.2.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. {schubmult-1.2.3 → schubmult-1.2.5}/PKG-INFO +1 -1
  2. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/perm_lib.py +13 -13
  3. schubmult-1.2.5/schubmult/schubmult_yz/schubmult_yz.py +1123 -0
  4. schubmult-1.2.5/schubmult/schubmult_yz/schubmult_yz_test.py +1126 -0
  5. schubmult-1.2.5/schubmult/schubmult_yz/schubmult_yz_test2.py +1144 -0
  6. schubmult-1.2.3/schubmult/schubmult_yz/schubmult_yz.py → schubmult-1.2.5/schubmult/schubmult_yz/schubmult_yz_test3.py +28 -10
  7. schubmult-1.2.5/schubmult/schubmult_yz/schubmult_yz_try.py +1194 -0
  8. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult.egg-info/PKG-INFO +1 -1
  9. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult.egg-info/SOURCES.txt +5 -1
  10. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult.egg-info/requires.txt +1 -0
  11. {schubmult-1.2.3 → schubmult-1.2.5}/setup.py +3 -2
  12. {schubmult-1.2.3 → schubmult-1.2.5}/LICENSE +0 -0
  13. {schubmult-1.2.3 → schubmult-1.2.5}/README.md +0 -0
  14. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/__init__.py +0 -0
  15. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_double/__init__.py +0 -0
  16. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_double/__main__.py +0 -0
  17. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_double/schubmult_double.py +0 -0
  18. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_py/__init__.py +0 -0
  19. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_py/__main__.py +0 -0
  20. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_py/schubmult_py.py +0 -0
  21. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_py/schubmult_py_bak.py +0 -0
  22. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_py/schubmult_py_parallel.py +0 -0
  23. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_yz/__init__.py +0 -0
  24. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult/schubmult_yz/__main__.py +0 -0
  25. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult.egg-info/dependency_links.txt +0 -0
  26. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult.egg-info/entry_points.txt +0 -0
  27. {schubmult-1.2.3 → schubmult-1.2.5}/schubmult.egg-info/top_level.txt +0 -0
  28. {schubmult-1.2.3 → schubmult-1.2.5}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: schubmult
3
- Version: 1.2.3
3
+ Version: 1.2.5
4
4
  Summary: Computing Littlewood-Richardson coefficients of Schubert polynomials
5
5
  Home-page: https://github.com/matthematics/schubmult
6
6
  Author: Matt Samuel
@@ -13,6 +13,17 @@ def inv(perm):
13
13
  v = v[:itr] + v[itr + 1 :]
14
14
  return ans
15
15
 
16
+ def code(perm):
17
+ L = len(perm)
18
+ ret = []
19
+ v = [i for i in range(1,L+1)]
20
+ for i in range(L-1):
21
+ itr = bisect_left(v, perm[i])
22
+ ret += [itr]
23
+ v = v[:itr] + v[itr + 1 :]
24
+ return ret
25
+
26
+
16
27
  def mulperm(perm1,perm2):
17
28
  if len(perm1)<len(perm2):
18
29
  return [perm1[perm2[i]-1] if perm2[i]<=len(perm1) else perm2[i] for i in range(len(perm2))]
@@ -20,7 +31,7 @@ def mulperm(perm1,perm2):
20
31
  return [perm1[perm2[i]-1] for i in range(len(perm2))]+perm1[len(perm2):]
21
32
 
22
33
  def uncode(cd):
23
- cd2 = list(cd)
34
+ cd2 = [*cd]
24
35
  if cd2 == []:
25
36
  return [1,2]
26
37
  max_required = max([cd2[i]+i for i in range(len(cd2))])
@@ -28,20 +39,9 @@ def uncode(cd):
28
39
  fullperm = [i+1 for i in range(len(cd2)+1)]
29
40
  perm = []
30
41
  for i in range(len(cd2)):
31
- perm += [fullperm[cd2[i]]]
32
- fullperm.pop(cd2[i])
42
+ perm += [fullperm.pop(cd2[i])]
33
43
  perm += [fullperm[0]]
34
44
  return perm
35
-
36
-
37
- def code(perm):
38
- ret = []
39
- for i in range(len(perm)-1):
40
- ret += [0]
41
- for j in range(i+1,len(perm)):
42
- if perm[i]>perm[j]:
43
- ret[-1] += 1
44
- return ret
45
45
 
46
46
  def reversecode(perm):
47
47
  ret = []