foglio di calcolo logico - Logical spreadsheet

Un foglio di logica è un foglio in cui formule assumono la forma di vincoli logici piuttosto che definizioni di funzione.

In tradizionali foglio elettronico sistemi, come Excel , le cellule sono suddivisi in cellule "direttamente specificati" e celle "calcolati" e le formule utilizzate per specificare i valori delle celle calcolati sono "funzionale", cioè per ogni combinazione di valori delle celle direttamente specificati , le formule specificano valori univoci per le celle calcolate. Fogli logiche rilassarsi queste restrizioni sopprimendo la distinzione tra cellule direttamente determinate e cellule calcolati e generalizzando definizioni funzionali a vincoli logici.

Per illustrare la differenza tra fogli tradizionali e fogli logici, si consideri un semplice foglio di calcolo numerico con tre celle a, b, ec. Ogni cella accetta un singolo intero come valore; e v'è una formula che indica che il valore della terza cella è la somma dei valori degli altri due celle.

Implementato come un foglio tradizionale, questo foglio consentirebbe all'utente di immettere valori nelle celle A e B, e sarebbe calcolare automaticamente cella c. Ad esempio, se l'utente fosse di tipo 1 in una e 2 in b, sarebbe calcolare il valore 3 per c.

Implementato come un foglio di calcolo logico, l'utente sarà in grado di inserire i valori in una delle celle. L'utente potrebbe digitare 1 in una e 2 in b, e il foglio sarebbe calcolare il valore 3 per c. In alternativa, l'utente potrebbe digitare 2 in b e 3 in c, e il foglio si calcola il valore 1 per un. E così via.

In questo caso, la formula è funzionale, e la funzione è invertibile. In generale, le formule non devono essere funzionali e le funzioni non devono essere invertibile. Ad esempio, in questo caso, potremmo scrivere formule che coinvolgono disuguaglianze e funzioni non invertibili (come radice quadrata). Più in generale, potremmo costruire fogli di calcolo con dati simbolici, piuttosto che numerici, e scrivere vincoli logici arbitrari su questi dati.

Riferimenti

  • J. Bongard et al .: Rapporti a 2006 AAAI Autunno Simposi, AI Magazine 28 (1), 88-92, 2007.
  • I. Cervesato: Nexcel, un foglio di calcolo deduttivo, la conoscenza di Ingegneria Review, Vol. 00: 0, 1-24, Cambridge University Press, 2004.
  • G. Fischer, C. Rathke: Fogli di calcolo basato sulla conoscenza, in Atti del 7 ° Conferenza Nazionale sulla Intelligenza Artificiale, St. Paul Minnesota, 21-26 agosto 1988 AAAI Press, menl Park, California, 802-807, 1988.
  • D. Gunning: Fogli deduttive, Defense Advanced Research Projects Agency Small Business Innovation Research, 2004.3-Topic SB043-040 2004.
  • M. Kassoff, L. Zen, A. Garg, M. Genesereth: Predicalc: Un foglio di calcolo logico di gestione del sistema, in Atti del convegno internazionale 31 su database molto grandi, Trondheim, Norvegia, 30 agosto - 2 settembre del 2005, ACM, Nuovo York, New York, 1247-1250, 2005.
  • M. Kassoff, M. Genesereth: Predicalc, un foglio di calcolo logico di gestione del sistema, la conoscenza di Ingegneria Review, Vol. 22: 3, 281-295, Cambridge University Press, 2007.
  • M. Spenke, C. Beilken: un'interfaccia foglio di calcolo per la programmazione logica, in K. Bice e CH Lewis (a cura di), Atti del ACM CHI 89 Human Factors in Computing Systems, Austin, Texas, 30 Aprile - 4 giugno del 1989, ACM Press , New York, New York, 75-80, 1989.
  • M. van Emden, M. Ohki, A. Takeuchi: Fogli con incrementali query come interfaccia utente per la programmazione logica, New Generation Computing 4 (3), 287-304, 1986.
  • http://news.stanford.edu/news/2007/april25/logic-042507.html
  • http://dbgroup.ncsu.edu/musings/genesereth.html