Specialization of functional logic programs based on needed narrowing

Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional languages and the resolution principle of logic languages. Needed narrowing is an optimal evaluation strategy which constitutes the basis of modern...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:Theory and practice of logic programming Ročník 5; číslo 3; s. 273 - 303
Hlavní autori: ALPUENTE, MARÍA, LUCAS, SALVADOR, VIDAL, GERMÁN, HANUS, MICHAEL
Médium: Journal Article
Jazyk:English
Vydavateľské údaje: Cambridge, UK Cambridge University Press 01.05.2005
Predmet:
ISSN:1471-0684, 1475-3081
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Abstract Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional languages and the resolution principle of logic languages. Needed narrowing is an optimal evaluation strategy which constitutes the basis of modern (narrowing-based) lazy functional logic languages. In this work, we present the fundamentals of partial evaluation in such languages. We provide correctness results for partial evaluation based on needed narrowing and show that the nice properties of this strategy are essential for the specialization process. In particular, the structure of the original program is preserved by partial evaluation and, thus, the same evaluation strategy can be applied for the execution of specialized programs. This is in contrast to other partial evaluation schemes for lazy functional logic programs which may change the program structure in a negative way. Recent proposals for the partial evaluation of declarative multi-paradigm programs use (some form of) needed narrowing to perform computations at partial evaluation time. Therefore, our results constitute the basis for the correctness of such partial evaluators.
AbstractList Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional languages and the resolution principle of logic languages. Needed narrowing is an optimal evaluation strategy which constitutes the basis of modern (narrowing-based) lazy functional logic languages. In this work, we present the fundamentals of partial evaluation in such languages. We provide correctness results for partial evaluation based on needed narrowing and show that the nice properties of this strategy are essential for the specialization process. In particular, the structure of the original program is preserved by partial evaluation and, thus, the same evaluation strategy can be applied for the execution of specialized programs. This is in contrast to other partial evaluation schemes for lazy functional logic programs which may change the program structure in a negative way. Recent proposals for the partial evaluation of declarative multi-paradigm programs use (some form of) needed narrowing to perform computations at partial evaluation time. Therefore, our results constitute the basis for the correctness of such partial evaluators.
Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional languages and the resolution principle of logic languages. Needed narrowing is an optimal evaluation strategy which constitutes the basis of modern (narrowing-based) lazy functional logic languages. In this work, we present the fundamentals of partial evaluation in such languages. We provide correctness results for partial evaluation based on needed narrowing and show that the nice properties of this strategy are essential for the specialization process. In particular, the structure of the original program is preserved by partial evaluation and, thus, the same evaluation strategy can be applied for the execution of specialized programs. This is in contrast to other partial evaluation schemes for lazy functional logic programs which may change the program structure in a negative way. Recent proposals for the partial evaluation of declarative multi-paradigm programs use (some form of) needed narrowing to perform computations at partial evaluation time. Therefore, our results constitute the basis for the correctness of such partial evaluators. [PUBLICATION ABSTRACT]
Author HANUS, MICHAEL
ALPUENTE, MARÍA
VIDAL, GERMÁN
LUCAS, SALVADOR
Author_xml – sequence: 1
  givenname: MARÍA
  surname: ALPUENTE
  fullname: ALPUENTE, MARÍA
  email: alpuente@dsic.upv.es
  organization: DSIC, Technical University of Valencia, Camino de Vera s/n, E-46020 Valencia, Spain (e-mail: alpuente@dsic.upv.es, slucas@dsic.upv.es, gvidal@dsic.upv.es
– sequence: 2
  givenname: SALVADOR
  surname: LUCAS
  fullname: LUCAS, SALVADOR
  email: alpuente@dsic.upv.es
  organization: DSIC, Technical University of Valencia, Camino de Vera s/n, E-46020 Valencia, Spain (e-mail: alpuente@dsic.upv.es, slucas@dsic.upv.es, gvidal@dsic.upv.es
– sequence: 3
  givenname: GERMÁN
  surname: VIDAL
  fullname: VIDAL, GERMÁN
  email: alpuente@dsic.upv.es
  organization: DSIC, Technical University of Valencia, Camino de Vera s/n, E-46020 Valencia, Spain (e-mail: alpuente@dsic.upv.es, slucas@dsic.upv.es, gvidal@dsic.upv.es
– sequence: 4
  givenname: MICHAEL
  surname: HANUS
  fullname: HANUS, MICHAEL
  email: mh@informatik.uni-kiel.de
  organization: Institut für Informatik, CAU Kiel, Olshausenstr. 40, D-24098 Kiel, Germany (e-mail: mh@informatik.uni-kiel.de
BookMark eNp9kE1LAzEQhoNUsK3-AG-L99WZZLO7HqXUDyh4qJ6XJJssKdukJltEf73pBwiKnuZl5n2Gd2ZCRs47TcglwjUCVjdLLCqEsi6gAKAM2AkZpxbPGdQ42mvMd_MzMolxBYAlo8WYzJcbrazo7acYrHeZN5nZOrXTos9631mVbYLvgljHTIqo2yy5nNZtUk6E4N-t687JqRF91BfHOiWv9_OX2WO-eH54mt0tcsWwHHLBpUBowdQSgRrGQUMtgHMuS0kNp6h0XbNWVpRpXiQjIJVSo0o901ZsSq4Oe1Okt62OQ7Py25CSxoami27rsiiTqTqYVPAxBm0aZYf9dUMQtm8Qmt3Lml8vSyT-IDfBrkX4-JdhR0asZbBtp78z_U19AWV2flw
CitedBy_id crossref_primary_10_1007_s00200_010_0122_4
crossref_primary_10_1017_S0956796825100099
crossref_primary_10_1145_1090189_1086394
crossref_primary_10_1016_j_entcs_2006_10_026
crossref_primary_10_1016_j_jsc_2010_01_006
crossref_primary_10_1016_j_entcs_2006_05_049
crossref_primary_10_1017_S1471068421000600
crossref_primary_10_1016_j_jlamp_2021_100729
crossref_primary_10_1016_j_entcs_2007_01_004
ContentType Journal Article
Copyright 2005 Cambridge University Press
Copyright_xml – notice: 2005 Cambridge University Press
DBID AAYXX
CITATION
3V.
7SC
7XB
8AL
8FD
8FE
8FG
8FK
ABUWG
AFKRA
ARAPS
AZQEC
BENPR
BGLVJ
CCPQU
DWQXO
GNUQQ
HCIFZ
JQ2
K7-
L7M
L~C
L~D
M0N
P5Z
P62
PHGZM
PHGZT
PKEHL
PQEST
PQGLB
PQQKQ
PQUKI
PRINS
Q9U
DOI 10.1017/S1471068404002303
DatabaseName CrossRef
ProQuest Central (Corporate)
Computer and Information Systems Abstracts
ProQuest Central (purchase pre-March 2016)
Computing Database (Alumni Edition)
Technology Research Database
ProQuest SciTech Collection
ProQuest Technology Collection
ProQuest Central (Alumni) (purchase pre-March 2016)
ProQuest Central (Alumni)
ProQuest Central UK/Ireland
Advanced Technologies & Computer Science Collection
ProQuest Central Essentials Local Electronic Collection Information
ProQuest Central
Technology collection
ProQuest One Community College
ProQuest Central
ProQuest Central Student
SciTech Premium Collection
ProQuest Computer Science Collection
Computer Science Database
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
Computing Database
Advanced Technologies & Aerospace Database
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Premium
ProQuest One Academic
ProQuest One Academic Middle East (New)
ProQuest One Academic Eastern Edition (DO NOT USE)
ProQuest One Applied & Life Sciences
ProQuest One Academic (retired)
ProQuest One Academic UKI Edition
ProQuest Central China
ProQuest Central Basic
DatabaseTitle CrossRef
Computer Science Database
ProQuest Central Student
Technology Collection
Technology Research Database
Computer and Information Systems Abstracts – Academic
ProQuest One Academic Middle East (New)
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Essentials
ProQuest Computer Science Collection
Computer and Information Systems Abstracts
ProQuest Central (Alumni Edition)
SciTech Premium Collection
ProQuest One Community College
ProQuest Central China
ProQuest Central
ProQuest One Applied & Life Sciences
ProQuest Central Korea
ProQuest Central (New)
Advanced Technologies Database with Aerospace
Advanced Technologies & Aerospace Collection
ProQuest Computing
ProQuest Central Basic
ProQuest Computing (Alumni Edition)
ProQuest One Academic Eastern Edition
ProQuest Technology Collection
ProQuest SciTech Collection
Computer and Information Systems Abstracts Professional
Advanced Technologies & Aerospace Database
ProQuest One Academic UKI Edition
ProQuest One Academic
ProQuest Central (Alumni)
ProQuest One Academic (New)
DatabaseTitleList CrossRef

Computer Science Database
Database_xml – sequence: 1
  dbid: BENPR
  name: AUTh Library subscriptions: ProQuest Central
  url: https://www.proquest.com/central
  sourceTypes: Aggregation Database
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1475-3081
EndPage 303
ExternalDocumentID 1403177411
10_1017_S1471068404002303
Genre Feature
GroupedDBID -E.
.FH
09C
09E
0E1
0R~
123
29Q
3V.
4.4
5VS
74X
74Y
7~V
8FE
8FG
8R4
8R5
AAAZR
AABES
AABWE
AACJH
AAFUK
AAGFV
AAKTX
AANRG
AARAB
AASVR
AAUKB
AAYOK
ABBXD
ABITZ
ABJNI
ABKKG
ABMWE
ABQTM
ABQWD
ABROB
ABTCQ
ABUWG
ABVKB
ABVZP
ABZCX
ACAJB
ACBMC
ACDLN
ACGFS
ACIMK
ACNCT
ACUIJ
ACYZP
ACZBM
ACZUX
ACZWT
ADCGK
ADDNB
ADFEC
ADKIL
ADOVH
ADVJH
AEBAK
AEHGV
AEMTW
AENEX
AENGE
AEYYC
AFFUJ
AFKQG
AFKRA
AFLOS
AFLVW
AFUTZ
AFZFC
AGABE
AGBYD
AGJUD
AHQXX
AHRGI
AIGNW
AIHIV
AIOIP
AISIE
AJ7
AJCYY
AJPFC
AJQAS
ALMA_UNASSIGNED_HOLDINGS
ALVPG
ALWZO
AQJOH
ARABE
ARAPS
ATUCA
AUXHV
AZQEC
BBLKV
BENPR
BGHMG
BGLVJ
BLZWO
BMAJL
BPHCQ
C0O
CAG
CBIIA
CCPQU
CCQAD
CCTKK
CFAFE
CHEAL
CJCSC
COF
CS3
DC4
DOHLZ
DU5
DWQXO
EBS
EJD
GNUQQ
HCIFZ
HG-
HST
HZ~
I.6
IH6
IOEEP
IS6
I~P
J36
J38
J3A
J9A
JHPGK
JQKCU
K6V
K7-
KCGVB
KFECR
L98
LW7
M-V
M0N
NIKVX
O9-
OK1
OYBOY
P2P
P62
PQQKQ
PROAC
PYCCK
Q2X
RAMDC
RCA
ROL
RR0
S6-
S6U
SAAAG
T9M
UT1
WFFJZ
WQ3
WXU
WYP
ZYDXJ
AAYXX
ABGDZ
ABXHF
AFFHD
AKMAY
CITATION
IPYYG
PHGZM
PHGZT
PQGLB
7SC
7XB
8AL
8FD
8FK
JQ2
L7M
L~C
L~D
PKEHL
PQEST
PQUKI
PRINS
Q9U
ID FETCH-LOGICAL-c316t-a5ba10d0f8b102f350e08a0555b6b2f521ce883db723e54d0f012bbe1c3dbfd73
IEDL.DBID K7-
ISICitedReferencesCount 13
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000230022800001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 1471-0684
IngestDate Sun Nov 09 08:31:15 EST 2025
Sat Nov 29 04:58:33 EST 2025
Tue Nov 18 22:33:14 EST 2025
Tue Jan 21 06:19:52 EST 2025
IsPeerReviewed true
IsScholarly true
Issue 3
Keywords functional logic programming
partial evaluation
needed narrowing
Language English
License https://www.cambridge.org/core/terms
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c316t-a5ba10d0f8b102f350e08a0555b6b2f521ce883db723e54d0f012bbe1c3dbfd73
Notes SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 14
PQID 201698646
PQPubID 43613
PageCount 31
ParticipantIDs proquest_journals_201698646
crossref_citationtrail_10_1017_S1471068404002303
crossref_primary_10_1017_S1471068404002303
cambridge_journals_10_1017_S1471068404002303
PublicationCentury 2000
PublicationDate 20050500
2005-05-00
20050501
PublicationDateYYYYMMDD 2005-05-01
PublicationDate_xml – month: 5
  year: 2005
  text: 20050500
PublicationDecade 2000
PublicationPlace Cambridge, UK
PublicationPlace_xml – name: Cambridge, UK
– name: Cambridge
PublicationTitle Theory and practice of logic programming
PublicationTitleAlternate Theory and Practice of Logic Programming
PublicationYear 2005
Publisher Cambridge University Press
Publisher_xml – name: Cambridge University Press
SSID ssj0016324
Score 1.735773
Snippet Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional...
SourceID proquest
crossref
cambridge
SourceType Aggregation Database
Enrichment Source
Index Database
Publisher
StartPage 273
SubjectTerms Regular Papers
Title Specialization of functional logic programs based on needed narrowing
URI https://www.cambridge.org/core/product/identifier/S1471068404002303/type/journal_article
https://www.proquest.com/docview/201698646
Volume 5
WOSCitedRecordID wos000230022800001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVPQU
  databaseName: Advanced Technologies & Aerospace Database
  customDbUrl:
  eissn: 1475-3081
  dateEnd: 20241209
  omitProxy: false
  ssIdentifier: ssj0016324
  issn: 1471-0684
  databaseCode: P5Z
  dateStart: 20010101
  isFulltext: true
  titleUrlDefault: https://search.proquest.com/hightechjournals
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: AUTh Library subscriptions: ProQuest Central
  customDbUrl:
  eissn: 1475-3081
  dateEnd: 20241209
  omitProxy: false
  ssIdentifier: ssj0016324
  issn: 1471-0684
  databaseCode: BENPR
  dateStart: 20010101
  isFulltext: true
  titleUrlDefault: https://www.proquest.com/central
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: Computer Science Database
  customDbUrl:
  eissn: 1475-3081
  dateEnd: 20241209
  omitProxy: false
  ssIdentifier: ssj0016324
  issn: 1471-0684
  databaseCode: K7-
  dateStart: 20010101
  isFulltext: true
  titleUrlDefault: http://search.proquest.com/compscijour
  providerName: ProQuest
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV1LSwMxEB609eDF-sRaLTl4EgO7m331JCotglCKKBQvJclmQZBt7VZ_vzPZ7GoRevGyLHlAyEzmmySTbwAuM5nEg0jjJkcGgoeIMVwaI7mKjBkgHoUm0zbZRDIep9PpYOJic0oXVlnbRGuos7mmM3LcpPsxUYnHN4sPTkmj6HLVZdDYhrYfBD6p-WPCm0sEYiK3j4sSCu5Jw_pSkxijqZDKSIfRCxe_qRXWIWrdQlvYGXX-OeB92HP-JrutFOQAtkxxCJ06lwNzS_sIhi4RvXuWyeY5I8irTgqZNZDMxXKVjKAvY9iqQOzDv8IyOSIIHsPLaPh8_8BdigWuhR-vuIyU9L3My1OFnkYuIs94qSQSMBWrIEds1yZNiYM5ECYKsSECmlLG11iWZ4k4gVYxL8wpsFDnaaRwctFghkpJlRgh0buLiE9HCtGF62aGZ26hlLMqyCyZ_RFIF7xaCDPt6Mopa8b7pi5XTZdFxdWxqXGvFtvPaBqZnW2s7cGuZXC1cY_n0FotP80F7Oiv1Vu57EP7bjiePPWtMuJ3Er1-A4s84jU
linkProvider ProQuest
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1LS8NAEB5qFfRifaLWxx70IgbSbF49iIhaLK2lYIXiJe5uNiBIWm1V_FH-R2c2SbUIvXnwFja7IcnMzrezM_sNwGEsAr_uKXRyhMMtFzHGEloLS3pa1xGPXB0rU2wi6HTCfr_eLcFncRaG0ioLm2gMdTxQtEeOTnrNJypx_2z4bFHRKAquFhU0Mq1o6Y939NhGp81LFO-R4zSuehfXVl5UwFK85o8t4UlRs2M7CSVia8I9W9uhINor6UsnQTRTOgyJddjh2nOxI5pwKXVNYVsSBxyfOwfzrou-Ek6frnc_CVoQ87k5zBRQMlHoFkFUYqimRmqjOYOrfv6TymEaEqcRwcBco_LPftAKLOfraXaeTYBVKOl0DSpFrQqWm651uLodaooO5MdO2SBhBOnZTigzAMDyXLURI2iPGfZKEdvxKjVMlQjyG3D3Jx-zCeV0kOotYK5KQk-iMBEQXCmFDDQXuHr1iC9IcL4NJxOJRrkhGEVZEl0Q_VKAbbALoUcqp2OnqiBPs4YcT4YMMy6SWZ2rhZp8v81ER3Zm3j2AxeveTTtqNzutKiwZtlqT47kL5fHLq96DBfU2fhy97JsJwODhrxXqCxrwPb8
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Specialization+of+functional+logic+programs+based+on+needed+narrowing&rft.jtitle=Theory+and+practice+of+logic+programming&rft.au=ALPUENTE%2C+MAR%C3%8DA&rft.au=LUCAS%2C+SALVADOR&rft.au=VIDAL%2C+GERM%C3%81N&rft.au=HANUS%2C+MICHAEL&rft.date=2005-05-01&rft.issn=1471-0684&rft.eissn=1475-3081&rft.volume=5&rft.issue=3&rft.spage=273&rft.epage=303&rft_id=info:doi/10.1017%2FS1471068404002303&rft.externalDBID=n%2Fa&rft.externalDocID=10_1017_S1471068404002303
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1471-0684&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1471-0684&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1471-0684&client=summon