jakobkroeker / test_m2 Goto Github PK
View Code? Open in Web Editor NEWrecord M2 issues
record M2 issues
in package IntegralClosure.m2
-- -- M2-comint -- {* hash: -1496599229 *}
i1 : S = ZZ/32003[a,b,c];
i2 : F = a^2_b^2_c+a^3+b^3+c^3
2 2 3 3 3
o2 = a b c + a + b + c
o2 : S
i3 : J = ideal jacobian ideal F
2 2 2 2 2 2 2
o3 = ideal (2a_b c + 3a , 2a b_c + 3b , a b + 3c )
o3 : Ideal of S
i4 : time integralClosure J
stdio:4:6:(3): error: expected lists of the same length
-- used 0.175256 seconds
configure option
i386-pc-linux-gnu
/home/jakob/newwork/Projects/M2-master/M2/BUILD/master/usr-host/lib/libgmpxx.so: undefined reference to `__atomic_fetch_add_4'
kk = QQ -- times out/ out of mem
R = kk[x1,x2,x3,x4,x5,x6, MonomialOrder=>Lex] --
I = ideal(x1^2_x2^2_x5^8_x6^8-x3^4_x4^4,x2^8_x3^2_x4^8_x5^2-x1^4_x6^4,x1^8_x3^8_x4^2_x6^2-x2^4_x5^4)
debug Core
m = gens I
rawCharSeries raw m
--- a/M2/libraries/gc/Makefile.in
+++ b/M2/libraries/gc/Makefile.in
@@ -41,6 +41,7 @@ LICENSEFILES = README.QUICK
# That's why it's better for sharable libraries to be distributed as separate packages.
# For gc "make check" requires far too much memory
+TLIMIT := 250
VLIMIT := 2500000
MLIMIT := $(VLIMIT)
# oddly, unless the VLIMIT is bigger than 2GB, the test subthread_create fails with this message
--- a/M2/Macaulay2/e/dmat.cpp
+++ b/M2/Macaulay2/e/dmat.cpp
@@ -245,17 +245,17 @@ namespace ffpackInterface
{
DMatZZpFFPACK N(mat);
- size_t * prof; // this is where the result will be placed
+ size_t * prof=NULL; // this is where the result will be placed
size_t rk;
if (row_profile)
- rk = FFPACK::RowRankProfile(mat.ring().field(),
- mat.numRows(),
- mat.numColumns(),
- N.array(),
- mat.numColumns(),
- prof);
+ rk = FFPACK::RowRankProfile (mat.ring().field(),
+ mat.numRows(),
+ mat.numColumns(),
+ N.array(),
+ mat.numColumns(),
+ prof);
else
- rk = FFPACK::ColumnRankProfile(mat.ring().field(),
+ rk = FFPACK::ColumnRankProfile (mat.ring().field(),
mat.numRows(),
mat.numColumns(),
N.array(),
@@ -274,33 +274,40 @@ namespace ffpackInterface
bool row_profile,
std::vector<size_t>& result_profile)
- {
+ {
DMatZZpFFPACK N(mat);
-
- size_t * prof; // this is where the result will be placed
+
+ size_t * prof=NULL; // this is where the result will be placed
size_t rk;
+
if (row_profile)
- rk = FFPACK::RowRankProfile(mat.ring().field(),
- mat.numRows(),
- mat.numColumns(),
- N.array(),
- mat.numColumns(),
- prof);
+ {
+ rk = FFPACK::RowRankProfile (mat.ring().field(),
+ mat.numRows(),
+ mat.numColumns(),
+ N.array(),
+ mat.numColumns(),
+ prof);
+ }
else
- rk = FFPACK::ColumnRankProfile(mat.ring().field(),
+ {
+ rk = FFPACK::ColumnRankProfile (mat.ring().field(),
mat.numRows(),
mat.numColumns(),
N.array(),
mat.numColumns(),
prof);
-
- result_profile.resize(0);
- for (size_t i=0; i<rk; i++)
+ }
+ result_profile.resize(0);
+ for (size_t i=0; i<rk; i++)
result_profile.push_back(prof[i]);
- delete [] prof;
+ delete [] prof;
+
}
+
+
}; // namespace ffpackInterface
ideal(13_x_1^2_x_2+8_x_2_x_3-1,(1/3)_x_1^3+(1/5)_x_2^3-7/2,2_x_1_x_2_x_3+6_x_1_x_3^2+4_x_2_x_3-(4/5)_x_3^2)
caused by: install-info is not in PATH
(/sbin/install-info)
workaround: add to PATH :/sbin:
make -f Makefile.ubuntu64
led I be an ideal and gI its groebner bases
my test may not detect the case when gI is (incorrectly) bigger than I
Question: how to test that?
`/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/Macaulay2/e/unit-tests
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(dhseqr.o): In function `dhseqr_':
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dhseqr.f:454: undefined reference to `_gfortran_concat_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(dormbr.o): In function `dormbr_':
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dormbr.f:274: undefined reference to `_gfortran_concat_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dormbr.f:282: undefined reference to `_gfortran_concat_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(dormbr.o):/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dormbr.f:277: more undefined references to `_gfortran_concat_string' follow
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(dlasd0.o): In function `dlasd0_':
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dlasd0.f:285: undefined reference to `_gfortran_pow_i4_i4'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(dlasda.o): In function `dlasda_':
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dlasda.f:455: undefined reference to `_gfortran_pow_i4_i4'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/dlasda.f:466: undefined reference to `_gfortran_pow_i4_i4'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(ilaenv.o): In function `ilaenv_':
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/ilaenv.f:272: undefined reference to `_gfortran_compare_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/ilaenv.f:273: undefined reference to `_gfortran_compare_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/ilaenv.f:279: undefined reference to `_gfortran_compare_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/ilaenv.f:279: undefined reference to `_gfortran_compare_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/ilaenv.f:279: undefined reference to `_gfortran_compare_string'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(ilaenv.o):/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/ilaenv.f:279: more undefined references to `_gfortran_compare_string' follow
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/usr-host/lib/liblapack.a(xerbla.o): In function `xerbla_':
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/xerbla.f:90: undefined reference to `_gfortran_st_write'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/xerbla.f:90: undefined reference to `_gfortran_string_len_trim'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/xerbla.f:90: undefined reference to `_gfortran_transfer_character_write'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/xerbla.f:90: undefined reference to `_gfortran_transfer_integer_write'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/xerbla.f:90: undefined reference to `_gfortran_st_write_done'
/home/jakob/Projects/M2-master/M2/BUILD/master/builds.tmp/ubuntu64.production/libraries/lapack/build/lapack-3.5.0/SRC/xerbla.f:92: undefined reference to `_gfortran_stop_string'
incorrect report. The but IS fixed
`
[ yes = yes ]
rm -rf files-common
umask 022 ; /usr/bin/install -c -d files-common/usr
umask 022 ; gtar --create --mode=a+rX,og-ws --exclude-from=/home/jakob/Projects/M2-master/M2/BUILD/dan/../../distributions/rpm/../tar-exclusions --file=- -C /home/jakob/Projects/M2-master/M2/BUILD/dan/builds.tmp/fedora64/usr-dist/common . | fakeroot gtar xfp - -C files-common/usr
: warning: fixed layout in use, just trying both common possibilities:
find
files-common/usr/man/man1
files-common/usr/share/man/man1
-name *.1 | xargs gzip
find: ‘files-common/usr/man/man1’: Datei oder Verzeichnis nicht gefunden
find files-common/usr -name .info | xargs gzip
sed -e 's/^Release: ./Release: 1/'
-e 's/%PKG_COM_RPM%/Macaulay2-1.7.0.1-1.common.rpm/g' <Macaulay2-common-body.spec >Macaulay2-common.spec
(cd files-common && find -type d -a -name Macaulay2 -prune -o -type f) | sed -e 's=^.="=' -e 's=$="=' >>Macaulay2-common.spec
fakeroot rpmbuild --sign --buildroot /home/jakob/Projects/M2-master/M2/BUILD/dan/builds.tmp/fedora64/distributions/rpm/files-common -bb Macaulay2-common.spec
`bug:
R = ZZ[s,t]
S = ZZ[a..d]
F = map(R,S,{s^3,s^2_t,s_t^2,t^3})
kernel F -- not implemented yet
After the release 1.8 we could also together spend some days so to cleanup/update the bug files
(It will be too much work for a single person).
workaround:
outcomment in in src/groebner/VectorArrayAPI.hpp
/*
#ifndef _4ti2_HAVE_MPZ_INT64_CONVERSION
template <>
inline
void
VectorArrayAPI::convert(const mpz_class& v1, _4ti2_int64_t& v2)
{
std::cerr << "UNIMPLEMENTED: Need to convert from mpz to _4ti2_int64_t" << std::endl;
exit(1);
}
#endif
*/
similar issue in src/zsolve/VectorArrayAPI.h
i1 : S = ZZ/32003[a,b,c];
i2 : F = a^2*b^2*c+a^3+b^3+c^3
2 2 3 3 3
o2 = a b c + a + b + c
o2 : S
i3 : J = ideal jacobian ideal F
2 2 2 2 2 2 2
o3 = ideal (2a*b c + 3a , 2a b*c + 3b , a b + 3c )
o3 : Ideal of S
i4 : time integralClosure J
stdio:4:6:(3): error: expected lists of the same length
R = QQ[x,y,z]
I = ideal((1/5)*y^2*z+11*z^2-1,-5*x^3+8*z^2-(8/3)*x,x^2*y-(7/6)*y^2*z-y*z^2-3/2)
pd := primaryDecomposition I;
pEHV := primaryDecomposition ( I, Strategy=>EisenbudHunekeVasconcelos);
pSY := primaryDecomposition ( I, Strategy=>ShimoyamaYokoyama);
never allow to use a symbol as a hash table key? using #
allow hashTable dot symbil
forbid hashtable # symbol ?
but, is it really an issue?
szenarios to check where no warnings occur
-- with dot syntax
-- with hash syntax:
silently failing examle (but that is probably ok)
restart
loadPackage "BlackBoxIdeals"
keys User#"private dictionary"
fragileHT = new HashTable from {
getGlobalSymbol(User#"private dictionary", "valuesAt") => 5
}
keys User#"private dictionary"
fragileHT.valuesAt -- fails silently
fragileHT#(local valuesAt)
keys User#"private dictionary"
kk = ZZ/7;
R = ZZ[x,y]
I = ideal x;
bb = blackBoxIdeal(I)
bb.valuesAt
getGlobalSymbol(User#"private dictionary", "valuesAt")===valuesAt
rng = ZZ[x_1..x_7]
I = ideal(-2*x_1*x_2*x_7-x_1*x_3*x_7-4,2*x_1*x_2*x_3-5*x_2*x_3*x_5-x_1*x_7,4*x_1*x_3*x_7,-4*x_1*x_2-x_6^2);
gI = ideal gens gb I;
assert( ( (gens I)%gI) == 0 );
ggI = ideal gens gb gI;
assert( gens ggI == gens gI ) ; --fails: #gI = 27 #ggI = 28
for example ZZ#0 or ZZ#isPrime
package Evil :
ZZ#isPrime= ()->true
loadPackage "Evil"
isprime 6
-- true
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.