Basi Gröbner in TCS?


41

Qualcuno conosce interessanti applicazioni delle basi di Gröbner all'informatica teorica?

Le basi di Gröbner sono utilizzate per risolvere equazioni polinomiali multi-variabile, un problema NP-difficile in generale. Mi chiedevo se fossero stati usati alcuni casi speciali trattabili per fornire algoritmi / costruzioni / prove efficienti nelle aree relative al TCS o al TCS (combinatoria, teoria dei codici).


11
Inoltre, scholarpedia fornisce un buon elenco di applicazioni in TCS. Possono essere utilizzati per trovare soluzioni a determinati problemi di ottimizzazione di numeri interi lineari, elenca un riferimento alla teoria dei codici attraverso "Basi e applicazioni di Gröbner". Includono di più: in robotica e ingegneria del software. È davvero una buona lista.
Ross Snider,

12
Ho dimenticato di includere il link: scholarpedia.org/article/Groebner_basis
Ross Snider

3
@Ross, comment -> rispondi?
Suresh Venkat,

3
Le basi Gröbner, mentre EXPSPACE in generale, sono in PSPACE su anelli booleani. Ciò ha applicazioni nel controllo dei modelli per sostituire i BDD: Quoc-Nam Tran, "Un algoritmo PSPACE per il calcolo delle basi di Groebner negli anelli booleani", proc. WASET, Vol. 35, novembre 2008, ISSN 2070-3740.
Martin Schwarz,

1
Un'applicazione è in crittoanalisi di alcuni codici algebrici, come AES. Vedere Basi, codifica e crittografia di Gröbner e il capitolo 6 di Aspetti algebrici dello standard di crittografia avanzato .
MS Dousti,

Risposte:


25

Il calcolo della base di Gröbner, sebbene EXPSPACE sia completo in generale, sono in PSPACE su anelli booleani. Ciò ha applicazioni nel controllo dei modelli per sostituire i BDD: Quoc-Nam Tran, "Un algoritmo PSPACE per il calcolo delle basi di Groebner negli anelli booleani", proc. WASET, Vol. 35, novembre 2008, ISSN 2070-3740

[NOTA] Il risultato che afferma che il calcolo della base di Groebner è in PSPACE su anelli booleani sembra sbagliato, vedi Mark van Hoeij, la base di Gröbner negli anelli booleani non è P-SPACE , arXiv: 1502.07220 , 2015.

[NOTA] L'affermazione che il risultato che afferma che il calcolo della base di Groebner è in PSPACE su anelli booleani sembra errato, è errata. L'autore confonde la calcolabilità di PSPACE con una dimensione polinomiale. Una funzione PSPACE potrebbe avere un output esponenzialmente lungo.


15

Esiste un interessante volume Springer sulle applicazioni delle basi Gröbner nella codifica e crittografia:

Personalmente sto facendo le mie ricerche sugli algoritmi per il calcolo degli ideali dei polinomi del localizzatore di errori (concetto abbastanza noto nella teoria dei codici, in particolare la decodifica della sindrome). Nel caso di codici di localizzatori di errori di geometria algeraica, l'ideale è di solito l'ideale del polinomio di diverse variabili: è il luogo in cui le basi di Gröbner svolgono un ruolo centrale. Nel volume sopra citato, la parte più interessante per me è la descrizione dell'algoritmo BMS da parte di S. Sakata e un sondaggio delle sue applicazioni per la decodifica dei codici di geometria algebrica.



12

Le basi di Gröbner sono state applicate per limitare i problemi di soddisfazione (vedere questa sovvenzione ). A questo punto le tecniche di base di Gröbner non sembrano essere utili per le applicazioni della soddisfazione dei vincoli, poiché sono in competizione con l'euristica della ricerca matura, le tecniche di applicazione della coerenza e i propagatori efficienti per scopi speciali - per non parlare dei buoni solutori SAT di uso generale. Tuttavia, penso che ci siano sicuramente usi teorici in attesa di essere scoperti, in particolare quando la base di Gröbner ha dimensioni ragionevoli. Vedi anche l'articolo di Jefferson, Jeavons, Green e van Dongen , presentato al MACIS 2007 (versione rivista: AMAI 67 359–382, 2013, doi: 10.1007 / s10472-013-9365-7 ), che discute alcuni dei problemi .


10

Ho usato una base di Gröbner per aiutare a trovare una breve dimostrazione di un nuovo teorema di dicotomia per problemi di #CSP su grafici 3-regolari con una singola funzione di vincolo binario con pesi complessi ( versione arXiv ).

f~g#CSP(f)=#CSP(g)

La base di Gröbner viene utilizzata per convertire dalle quattro variabili iniziali necessarie per definire una funzione binaria in sei "variabili simmetrizzate" che sono invarianti in ciascuna classe di equivalenza (vedere la sezione D del documento collegato sopra). Tuttavia, la base di Gröbner non è menzionata nel documento poiché il suo unico scopo era la trasformazione automatizzata dalle quattro variabili iniziali alle sei variabili simmetrizzate in vari polinomi (che è stata preformata dal GroebnerBasis di Mathematica ).


9

Il seguente documento può essere visto come un'unica applicazione.

Vedo che gli autori usano l'algoritmo di Buchberger come una subroutine e sfruttano la struttura del loro problema per dimostrare che il tempo di esecuzione è limitato polinomialmente.


9

Grant Passmore e altri ne scrivono nel contesto dei solutori di SMT. Non sono un esperto delle basi Groebner né dei solutori SMT, quindi è difficile per me valutare quanto questo riferimento risponda alla tua domanda.


9

A dimostrazione della complessità, l'utilizzo di basi Gröbner è stato proposto da Clegg, Edmonds, Impagliazzo per confutare i CNF. Ci sono casi in cui questo sistema di prova supera in modo esponenziale la risoluzione, ma non mi sembra che ci sia un reale miglioramento delle prestazioni per le istanze generali.

solF(2)

Tuttavia il calcolo polinomiale non è stato studiato tanto quanto la risoluzione, pertanto non sono disponibili euristiche ben testate.

Vedi anche questo per l'applicazione in cryptanalysyis (non ne so molto).





Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.