Ticket #5576 (closed enhancement: fixed)

Opened 4 years ago

Last modified 4 years ago

[with patch, positive review] MPolynomialSystem cleanup

Reported by: malb Owned by: malb
Priority: major Milestone: sage-4.0
Component: commutative algebra Keywords: crypto
Cc: mhansen Work issues:
Report Upstream: Reviewers:
Authors: Merged in:
Dependencies: Stopgaps:

Description

  • clean up of ReST in mq.MPolynomialSystem
  • improved documentation of mq.MPolynomialSystem
  • deprecated mq.MPolynomialSystem_gf2e.change_ring()
  • added mq.MPolynomialSystem_gf2e.weil_restriction()
  • added mq.MPolynomialSystem.connected_components()
  • added mq.MPolynomialSystem.connection_graph()
  • added mq.MPolynomialSystem_gf2.eliminate_linear_variables()

Attachments

mpolynomialsystem_rest.patch Download (44.7 KB) - added by malb 4 years ago.

Change History

comment:1 Changed 4 years ago by malb

The attached patch depends on #5569

comment:2 Changed 4 years ago by mvngu

First I applied the patch at #5569 against Sage 3.4, then I applied the patch on this ticket. Doctesting gave me timed out errors:

[mvngu@sage sage-3.4]$ sage -t -long devel/sage-5576/sage/crypto/mq/
sage -t -long "devel/sage-5576/sage/crypto/mq/sbox.py"      
         [11.3 s]
sage -t -long "devel/sage-5576/sage/crypto/mq/mpolynomialsystemgenerator.py"
         [7.6 s]
sage -t -long "devel/sage-5576/sage/crypto/mq/sr.py"        
*** *** Error: TIMED OUT! PROCESS KILLED! *** ***
*** *** Error: TIMED OUT! *** ***
*** *** Error: TIMED OUT! *** ***
         [1800.5 s]
sage -t -long "devel/sage-5576/sage/crypto/mq/mpolynomialsystem.py"
         [24.4 s]
 
----------------------------------------------------------------------
The following tests failed:


        sage -t -long "devel/sage-5576/sage/crypto/mq/sr.py"
Total time for all tests: 1843.9 seconds

comment:3 Changed 4 years ago by malb

I can reproduce your problem and I'll look into it. Thanks.

comment:4 Changed 4 years ago by malb

I fixed the underlying issue and will raise a question on [sage-devel] how to deal with the API change that caused it.

comment:5 Changed 4 years ago by mvngu

With the latest stable version sage-3.4.2, i.e. the "post-final" 3.4.2 version, I get the following hunk failures:

----------------------------------------------------------------------
| Sage Version 3.4.2, Release Date: 2009-05-05                       |
| Type notebook() for the GUI, and license() for information.        |
----------------------------------------------------------------------
Loading Sage library. Current Mercurial branch is: 5576
sage: hg_sage.apply("/home/mvngu/patch/5576/mpolynomialsystem_rest.patch")
cd "/scratch/mvngu/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage" && hg status
cd "/scratch/mvngu/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage" && hg status
cd "/scratch/mvngu/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage" && hg import   "/home/mvngu/patch/5576/mpolynomialsystem_rest.patch"
applying /home/mvngu/patch/5576/mpolynomialsystem_rest.patch
patching file sage/crypto/mq/mpolynomialsystem.py
Hunk #7 FAILED at 262
Hunk #8 FAILED at 277
Hunk #9 FAILED at 314
Hunk #22 FAILED at 652
4 out of 51 hunks FAILED -- saving rejects to file sage/crypto/mq/mpolynomialsystem.py.rej
abort: patch failed to apply

comment:6 Changed 4 years ago by malb

I rebased the patch.

Changed 4 years ago by malb

comment:7 Changed 4 years ago by malb

  • Cc mhansen added
[01:15] <mhansen> malb: You need to fix the REFERENCES section in eliminate_linear_variables([01:16] <malb> what about it?
[01:18] <mhansen> The text after the .. should all be aligned.
[01:18] <mhansen> (on the left.

fixed in updated patch.

comment:8 Changed 4 years ago by burcin

  • Summary changed from [with patch, needs review] MPolynomialSystem cleanup to [with patch, positive review] MPolynomialSystem cleanup

Patch looks good, doctests pass.

comment:9 Changed 4 years ago by mabshoff

  • Status changed from new to closed
  • Resolution set to fixed
  • Milestone changed from sage-4.0.1 to sage-4.0

Merged in Sage 4.0.alpha0.

Cheers,

Michael

Note: See TracTickets for help on using tickets.