Opened 11 years ago

# Extension polybori.lib

Reported by: Owned by: dreyer dreyer minor 3-1-5 and higher dontKnow 3-1-4 Max0791@…, sscherer90@…

Maximilian Kammermeier and Susanne Scherer just finished `polybori.lib` for wrapping PolyBoRi via `pyobjdect`.), see attached. Now, PolyBoRi can be used in a very Singular-ish way:

```  LIB "polybori.lib";

ring r0=2,x(1..4),lp;
poly f1=x(1)^2+2*x(2)*(x(3))-x(4)^3;
poly f2=x(1)^2-x(3)*x(1);
poly f3=x(2)+5-2*x(1);
poly f4=x(1)*x(2)-x(3);
ideal I=f1,f2,f3,f4;

bideal bI = I;          // Convert to PolyBoRi data structues and add x(i)^2-x(i)
bideal bRes = std(bI);  // actually calls PolyBoRi

ideal I2 = ideal(bRes); // convert back ...
std(bRes[1..2]);        // ... or continue within PolyBoRi
```

This is the first shoot, so any comments are welcome!

Note: In addition to `pyobject.so` it needs the most recent development version of Singular as well as `PolyBoRi` installed in the search path of python or Singular.

### comment:1 Changed 11 years ago by dreyer

Description: modified (diff)

### Changed 11 years ago by dreyer

Singular Interface Library for `PolyBoRi`

### comment:3 Changed 11 years ago by dreyer

Description: modified (diff)

### comment:4 Changed 11 years ago by dreyer

Note: You can also avoid intermediate Singular polynomials as follows (useful for large Boolean polynomials):

```LIB "polybori.lib";

ring r0=2,x(1..4),lp;
def x=bvar;

bpoly f1=x(1)+x(4);
bpoly f2=x(1)+x(3)*x(1);
bpoly f3=x(2)+1+x(1);
bpoly f4=x(1)*x(2)+x(3);
bideal bI=list(f1,f2,f3,f4);

std(bI);
```

### comment:5 follow-up:  6 Changed 10 years ago by barakat

Resolution: → wontfix new → closed

Thank you for your work. Is it OK to close the ticket?

### comment:6 in reply to:  5 Changed 10 years ago by dreyer

Resolution: wontfix closed → reopened

Thank you for your work. Is it OK to close the ticket?

Well no, the LIB was not integrated into Singular yet, so this ticket must be kept as a reminder. But I can take over ownership.

According to Hans I've to add some How-To information, which I can do tomorrow.

### comment:7 Changed 10 years ago by dreyer

Owner: changed from somebody to dreyer reopened → new

### comment:8 Changed 10 years ago by dreyer

Status: new → assigned

This was introduced to master here: https://github.com/Singular/Sources/pull/194

But it's still missing on spielwiese.

Note: See TracTickets for help on using tickets.