A language-independent proof system for full program equivalence

Two programs are fully equivalent if, for the same input, either they both diverge or they both terminate with the same result. Full equivalence is an adequate notion of equivalence for programs written in deterministic languages. It is useful in many contexts, such as capturing the correctness of p...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:Formal aspects of computing Ročník 28; číslo 3; s. 469 - 497
Hlavní autori: Ciobâcă, Ştefan, Lucanu, Dorel, Rusu, Vlad, Roşu, Grigore
Médium: Journal Article
Jazyk:English
Vydavateľské údaje: London Springer London 01.05.2016
Association for Computing Machinery
Springer Verlag
Predmet:
ISSN:0934-5043, 1433-299X
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Abstract Two programs are fully equivalent if, for the same input, either they both diverge or they both terminate with the same result. Full equivalence is an adequate notion of equivalence for programs written in deterministic languages. It is useful in many contexts, such as capturing the correctness of program transformations within the same language, or capturing the correctness of compilers between two different languages. In this paper we introduce a language-independent proof system for full equivalence, which is parametric in the operational semantics of two languages and in a state-similarity relation. The proof system is sound: a proof tree establishes the full equivalence of the programs given to it as input. We illustrate it on two programs in two different languages (an imperative one and a functional one), that both compute the Collatz sequence. The Collatz sequence is an interesting case study since it is not known whether the sequence terminates or not; nevertheless, our proof system shows that the two programs are fully equivalent (even if we cannot establish termination or divergence of either one).
AbstractList Two programs are fully equivalent if, for the same input, either they both diverge or they both terminate with the same result. Full equivalence is an adequate notion of equivalence for programs written in deterministic languages. It is useful in many contexts, such as capturing the correctness of program transformations within the same language, or capturing the correctness of compilers between two different languages. In this paper we introduce a language-independent proof system for full equivalence, which is parametric in the operational semantics of two languages and in a state-similarity relation. The proof system is sound: a proof tree establishes the full equivalence of the programs given to it as input. We illustrate it on two programs in two different languages (an imperative one and a functional one), that both compute the Collatz sequence. The Collatz sequence is an interesting case study since it is not known whether the sequence terminates or not; nevertheless, our proof system shows that the two programs are fully equivalent (even if we cannot establish termination or divergence of either one).
Two programs are mutually equivalent if, for the same input, either they both diverge or they both terminate with the same result. Mutual equivalence is an adequate notion of equivalence for programs written in deterministic languages. It is useful in many contexts, such as capturing the correctness of program transformations within the same language, or capturing the correctness of compilers between two different languages. In this paper we introduce a language-independent proof system for mutual equivalence, which is para-metric in the operational semantics of two languages and in a state-similarity relation. The proof system is sound: if it terminates then it establishes the mutual equivalence of the programs given to it as input. We illustrate it on two programs in two different languages (an imperative one and a functional one), that both compute the Collatz sequence. The Collatz sequence is an interesting case study since it is not known wether the sequence terminates or not; nevertheless, our proof system shows that the two programs are mutually equivalent (even if we cannot establish termination or divergence of either one).
Author Lucanu, Dorel
Ciobâcă, Ştefan
Rusu, Vlad
Roşu, Grigore
Author_xml – sequence: 1
  givenname: Ştefan
  surname: Ciobâcă
  fullname: Ciobâcă, Ştefan
  email: stefan.ciobaca@gmail.com
  organization: Faculty of Computer Science, “Alexandru Ioan Cuza” University
– sequence: 2
  givenname: Dorel
  surname: Lucanu
  fullname: Lucanu, Dorel
  organization: Faculty of Computer Science, “Alexandru Ioan Cuza” University
– sequence: 3
  givenname: Vlad
  surname: Rusu
  fullname: Rusu, Vlad
  organization: Inria
– sequence: 4
  givenname: Grigore
  surname: Roşu
  fullname: Roşu, Grigore
  organization: University of Illinois at Urbana-Champaign
BackLink https://inria.hal.science/hal-01245528$$DView record in HAL
BookMark eNp9kE9rGzEQxUVxoY7bD9DbQi7JQan-rKTVLSakdcDQSwu9Ce3uyFmzlmxp1-BvHy1bSgkklxkYfm_mzbtCCx88IPSVkjtKiPqWCKFS4Fww4ZJi9QEtack5Zlr_WaAl0bzEgpT8E7pKaZ9poSldovt10Vu_G-0OcOdbOEIufiiOMQRXpEsa4FC4EAs39v003UV7KOA0dmfbg2_gM_robJ_gy9--Qr-_P_562ODtzx9PD-stbkomB1zyVvFK6doJaJl2tdOtYNBWkivQlWikI8QxWQtS1RaYbRxzuixbVgrVyJqv0O2899n25hi7g40XE2xnNuutmWaEZlSw6swyezOz2e9phDSYQ5ca6POnEMZkaEUl4URWKqPXr9B9GKPPnxiqst-craoyRWeqiSGlCO6fA0rMlL-Z888mpJnyN9Nm9UrTdIMduuCHaLv-XSWblSlf8TuI_3l6U_QCy1SaEQ
CODEN FACME5
CitedBy_id crossref_primary_10_14232_actacyb_284280
crossref_primary_10_14232_actacyb_284349
crossref_primary_10_1016_j_jlamp_2017_09_002
crossref_primary_10_1016_j_jlamp_2023_100894
Cites_doi 10.1007/978-3-319-08918-8_29
10.1007/3-540-45699-6_8
10.1007/s00236-008-0075-2
10.1145/358438.349314
10.1017/CBO9780511777110
10.1007/978-3-319-28114-8_3
10.1007/978-3-642-38613-8_25
10.1145/1925844.1926402
10.1145/1538788.1538814
10.1145/2398857.2384656
10.1145/1631687.1596567
10.1145/2103621.2103666
10.1080/00029890.1983.11971148
10.1007/11513988_20
10.1007/978-3-642-17796-5_9
10.1007/3-540-45619-8_20
10.1007/978-3-642-31424-7_54
10.1016/j.ic.2008.03.026
10.1145/2813885.2737991
10.1109/SYNASC.2014.30
10.1145/1594834.1480925
10.1145/2103621.2103719
10.1109/LICS.2002.1029817
10.1007/978-3-540-25984-8_1
10.1145/512644.512669
10.1007/978-3-319-28114-8_2
10.1109/LICS.2013.42
10.1145/982962.964003
10.1145/2775051.2676982
10.1145/363235.363259
10.1007/978-3-642-31585-5_33
10.1145/1889997.1890002
10.1145/1543135.1542513
10.1007/978-3-642-27940-9_9
10.1002/stvr.1472
10.1007/BFb0014312
10.1145/1160074.1159827
ContentType Journal Article
Copyright British Computer Society 2016
Distributed under a Creative Commons Attribution 4.0 International License
Copyright_xml – notice: British Computer Society 2016
– notice: Distributed under a Creative Commons Attribution 4.0 International License
DBID AAYXX
CITATION
3V.
7SC
7XB
8AL
8AO
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
1XC
VOOES
DOI 10.1007/s00165-016-0361-7
DatabaseName CrossRef
ProQuest Central (Corporate)
Computer and Information Systems Abstracts
ProQuest Central (purchase pre-March 2016)
Computing Database (Alumni Edition)
ProQuest Pharma Collection
Technology Research Database
ProQuest SciTech Collection
ProQuest Technology Collection
ProQuest Central (Alumni) (purchase pre-March 2016)
ProQuest Central (Alumni Edition)
ProQuest Central UK/Ireland
Advanced Technologies & Computer Science Collection
ProQuest Central Essentials - QC
ProQuest Central
Technology Collection
ProQuest One Community College
ProQuest Central Korea
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 (New)
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
Hyper Article en Ligne (HAL)
Hyper Article en Ligne (HAL) (Open Access)
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 Pharma Collection
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 Computer and Information Systems Abstracts
CrossRef


Computer Science Database
Database_xml – sequence: 1
  dbid: BENPR
  name: ProQuest Central
  url: https://www.proquest.com/central
  sourceTypes: Aggregation Database
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1433-299X
EndPage 497
ExternalDocumentID oai:HAL:hal-01245528v2
4051251381
10_1007_s00165_016_0361_7
GrantInformation_xml – fundername: Boeing
  grantid: Formal Analysis Tools for Cyber Security", 2014-2015
  funderid: http://dx.doi.org/10.13039/100000003
– fundername: SPAWAR Systems Center Pacific, Space and Naval Warfare Systems Command
  grantid: FA8750-12-C-0284
  funderid: http://dx.doi.org/10.13039/100006503
– fundername: NSF
  grantid: CCF-1218605, CCF-1318191 and CCF-1421575
– fundername: European Social Fun, Romanian Government
  grantid: POSDRU/159/1.5/S/137750
GroupedDBID -4Z
-59
-5G
-BR
-EM
-Y2
-~C
.4S
.86
.DC
.VR
06D
0VY
1N0
1SB
203
28-
29H
2J2
2JY
2KG
2LR
2P1
2VQ
2~H
30V
3V.
4.4
408
409
40D
40E
5GY
5QI
5VS
67Z
6NX
8AO
8FE
8FG
8FW
8TC
95-
95.
95~
96X
AAAVM
AABHQ
AAHNG
AAIAL
AAJKR
AAKMM
AALFJ
AAOBN
AARHV
AARTL
AATVU
AAWCG
AAYIU
AAYQN
AAYTO
AAYZH
ABBBX
ABBXA
ABDPE
ABDZT
ABECU
ABFTD
ABFTV
ABHLI
ABHQN
ABJNI
ABJOX
ABKCH
ABKTR
ABLJU
ABMNI
ABMOR
ABMQK
ABNWP
ABQBU
ABQSL
ABSXP
ABTAH
ABTEG
ABTHY
ABTMW
ABUWG
ABXPI
ACBXY
ACGFS
ACHXU
ACIHN
ACKNC
ACM
ACMLO
ACOKC
ACOMO
ACREN
ACSNA
ACZOJ
ADBSK
ADHHG
ADHIR
ADIMF
ADINQ
ADKNI
ADKPE
ADPZR
ADRFC
ADURQ
ADYFF
ADYOE
ADZKW
AEAQA
AEBTG
AEFIE
AEGAL
AEGNC
AEJHL
AEJRE
AEKMD
AENEX
AEOHA
AEPYU
AETLH
AEXYK
AFBBN
AFEXP
AFGCZ
AFKRA
AFLOW
AFQWF
AFWTZ
AFWXC
AFYQB
AFZKB
AGAYW
AGDGC
AGGDS
AGJBK
AGQMX
AGWIL
AGWZB
AGYKE
AHAVH
AHBYD
AHKAY
AHSBF
AHYZX
AIIXL
AILAN
AITGF
AJBLW
AJRNO
AJZVZ
ALMA_UNASSIGNED_HOLDINGS
ALWAN
AMKLP
AMTXH
AMYQR
AOCGG
ARAPS
ARCSS
ARMRJ
ASPBG
AVWKF
AXYYD
AYJHY
AZFZN
AZQEC
B-.
BA0
BBWZM
BDATZ
BENPR
BGLVJ
BGNMA
BPHCQ
CAG
CCPQU
COF
CS3
CSCUP
DL5
DNIVK
DU5
DWQXO
EBS
EDO
EIOEI
EJD
ESBYG
FEDTE
FERAY
FFXSO
FIGPU
FINBP
FNLPD
FRRFC
FSGXE
FWDCC
GGCAI
GGRSB
GJIRD
GNUQQ
GNWQR
GQ6
GQ7
GQ8
GUFHI
GXS
H13
HCIFZ
HF~
HG5
HG6
HMJXF
HQYDN
HRMNR
HVGLF
HZ~
I-F
I09
IHE
IJ-
ITM
IXC
IZIGR
IZQ
I~X
I~Z
J-C
J0Z
JBSCW
JCJTX
K6V
K7-
KDC
KOV
KOW
LAS
LHSKQ
M0N
M4Y
MA-
N2Q
N9A
NB0
NDZJH
NQJWS
NU0
O9-
O93
O9G
O9I
O9J
OAM
OK1
P19
P62
P9O
PF0
PQQKQ
PROAC
PT5
Q2X
QOK
QOS
R4E
R89
R9I
RHV
RIG
RNI
RNS
ROL
RPX
RSV
RZK
S16
S1Z
S26
S27
S28
S3B
SAP
SCJ
SCLPG
SCO
SDH
SDM
SHX
SISQX
SNE
SNPRN
SNX
SOHCF
SOJ
SPISZ
SRMVM
SSLCW
STPWE
SZN
T13
T16
TSG
TSK
TSV
TUC
U2A
UG4
UOJIU
UTJUX
UZXMN
VC2
VFIZW
W23
W48
WK8
YLTOR
Z45
Z7X
Z81
Z83
Z88
Z8R
Z8U
Z8W
Z92
ZMTXR
ZY4
~EX
AAYXX
ABFSG
ACSTC
ADHKG
AEJOY
AEZWR
AFFHD
AFHIU
AGQPQ
AHWEU
AIXLP
AKRVB
CITATION
EBLON
PHGZM
PHGZT
PQGLB
7SC
7XB
8AL
8FD
8FK
JQ2
L7M
L~C
L~D
PKEHL
PQEST
PQUKI
PRINS
PUEGO
Q9U
1XC
VOOES
ID FETCH-LOGICAL-c426t-43d73879bf5ed29fbf9d52ed8637e985c6f00f26b508bae2acf2f944d2457c6b3
IEDL.DBID K7-
ISICitedReferencesCount 12
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000376062700006&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0934-5043
IngestDate Tue Oct 14 20:43:58 EDT 2025
Sun Nov 09 11:19:06 EST 2025
Sat Aug 23 14:34:11 EDT 2025
Sat Nov 29 01:39:32 EST 2025
Tue Nov 18 21:52:28 EST 2025
Fri Feb 21 02:37:21 EST 2025
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Issue 3
Keywords Program equivalence
Matching logic
Programming language aggregation
Programming language semantics
Full equivalence
Language English
License http://www.acm.org/publications/policies/copyright_policy#Background
Distributed under a Creative Commons Attribution 4.0 International License: http://creativecommons.org/licenses/by/4.0
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c426t-43d73879bf5ed29fbf9d52ed8637e985c6f00f26b508bae2acf2f944d2457c6b3
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
content type line 23
OpenAccessLink https://inria.hal.science/hal-01245528
PQID 1787900778
PQPubID 43690
PageCount 29
ParticipantIDs hal_primary_oai_HAL_hal_01245528v2
proquest_miscellaneous_1816030687
proquest_journals_1787900778
crossref_primary_10_1007_s00165_016_0361_7
crossref_citationtrail_10_1007_s00165_016_0361_7
springer_journals_10_1007_s00165_016_0361_7
PublicationCentury 2000
PublicationDate 2016-05-01
PublicationDateYYYYMMDD 2016-05-01
PublicationDate_xml – month: 05
  year: 2016
  text: 2016-05-01
  day: 01
PublicationDecade 2010
PublicationPlace London
PublicationPlace_xml – name: London
PublicationSubtitle Applicable Formal Methods
PublicationTitle Formal aspects of computing
PublicationTitleAbbrev Form Asp Comp
PublicationYear 2016
Publisher Springer London
Association for Computing Machinery
Springer Verlag
Publisher_xml – name: Springer London
– name: Association for Computing Machinery
– name: Springer Verlag
References Traian-Florin Şerbănuţă, Grigore Roşu, José Meseguer (2009) A rewriting logic approach to operational semantics. Information and Computation, 207(2):305–340
Nick Benton, Chung-Kil Hur (2009) Biorthogonality, step-indexing and compiler correctness. In ICFP 2009, pp 97–108
Davide Sangiorgi, Naoki Kobayashi, Eijiro Sumii (2011) Environmental bisimulations for higher-order languages. ACM Transactions on Programming Languages and Systems, 33(1):5
Grigore Roşu, Chucky Ellison, Wolfram Schulte (2010) Matching logic: An alternative to Hoare/Floyd logic. In AMAST 2010, volume 6486 of LNCS, pp 142–162
Fabio Somenzi, Andreas Kuehlmann (2006) Electronic Design Automation For Integrated Circuits Handbook, volume 2, chapter 4: Equivalence Checking. CRC Press
George Necula (2000) Translation validation for an optimizing compiler. In PLDI 2000, pp 83–94. ACM
José Meseguer, Grigore Roşu (2004) Rewriting logic semantics: From language specifications to formal analysis tools. In IJCAR 2004, volume 3097 of LNCS, pp 1–44
Amal Ahmed, Derek Dreyer, Andreas Rossberg (2009) State-dependent representation independence. In POPL 2009, pp 340–353
Claudia Elena Chiriţă, Traian Florin Şerbănuţă (2015) An institutional foundation for the K\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${\mathbb{K}}$$\end{document} semantic framework. In WADT 2014, volume 9463 of LNCS, pp 9–29
Sagar Chaki, Arie Gurfinkel, Ofer Strichman (2012) Regression verification for multi-threaded programs. In VMCAI 2012, volume 7148 of LNCS, pp 119–135
Nick Benton (2004) Simple relational correctness proofs for static analyses and program transformations. In POPL 2004, pp 14–25
Robin Milner (1989) Communication and concurrency. Prentice Hall
John C. Reynolds (2002) Separation logic: A logic for shared mutable data structures. In LICS 2002, pp 55–74
Sudipta Kundu, Zachary Tatlock, Sorin Lerner (2009) Proving optimizations correct using parameterized program equivalence. In PLDI 2009, pp 327–337. ACM
Dorel Lucanu, Vlad Rusu, Andrei Arusoaie A Generic Framework for Symbolic Execution: Theory and Applications. Journal of Symbolic Computation, to appear
GodlinBennyStrichmanOferRegression verification: proving the equivalence of similar programsSoftware Testing, Verification and Reliability201323324125810.1002/stvr.1472
Denis Bogdănaş, Grigore Roşu (2015) K-Java: A Complete Semantics of Java. In POPL 2015, pp 445–456
Anne Elisabeth Haxthausen, Friederike Nickl (1996) Pushouts of order-sorted algebraic specifications. In AMAST 1996, pp 132–147. Springer-Verlag
Andrei Ştefănescu, Ştefan Ciobâcă, Radu Mereuţă, Brandon M. Moore, Traian Florin Şerbănuţă, Grigore Roşu (2014) All-path reachability logic. In RTA-TLCA’14, volume 8560 of LNCS, pp 425–440
Ştefan Ciobâcă (2014) Reducing partial equivalence to partial correctness. In SYNASC 2014, pp 164–171. IEEE
GodlinBennyStrichmanOferInference rules for proving the equivalence of recursive proceduresActa Informatica2008456403439242556010.1007/s00236-008-0075-21161.68013
Grigore Roşu (2006) Equality of streams is a Π20\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${\Pi}_{2}^{0}$$\end{document}-complete problem. In ICFP 2006, pp 184–191. ACM
Grigore Roşu, Andrei Ştefănescu (2012) Towards a unified theory of operational and axiomatic semantics. In ICALP 2012, volume 7392 of LNCS, pp 351–363
Davide Sangiorgi (2011) Introduction to Bisimulation and Coinduction. Cambridge University Press, New York, NY, USA
Grigore Roşu (2015) Matching logic—extended abstract. In RTA 2015, volume 36 of LIPIcs, pp 5–21
Shuvendu K. Lahiri, Chris Hawblitzel, Ming Kawaguchi, Henrique Rebêlo (2012) SYMDIFF: A language-agnostic semantic diff tool for imperative programs. In CAV 2012, volume 7358 of LNCS, pp 712–717
Sorin Crăciunescu (2002) Proving the equivalence of CLP programs. In ICLP 2002, volume 2401 of LNCS, pp 287–301
Grigore Roşu, Andrei Ştefănescu (2012) Checking reachability using matching logic. In OOPSLA, pp 555–574. ACM
Yves Bertot, Pierre Castran (2010) Interactive Theorem Proving and Program Development: Coq’Art The Calculus of Inductive Constructions. Springer, 1st edition
HoareCharlesAntony RichardAn axiomatic basis for computer programmingCommunications of the ACM1969121057658010.1145/363235.3632590179.23105
Daejun Park, Andrei Ştefănescu, Grigore Roşu (2015) KJS: A complete formal semantics of JavaScript. In PLDI 2015, pp 346–356
Chung-Kil Hur, Derek Dreyer, Georg Neis, Viktor Vafeiadis (2012) The marriage of bisimulations and kripke logical relations. In POPL 2012, pp 59–72
Dorel Lucanu, Vlad Rusu (2014) Program equivalence by circular reasoning. Formal Aspects of Computing, pp 1–26
Chucky Ellison, Grigore Roşu (2012) An executable formal semantics of C with applications. In POPL 2012, pp 533–544
Tamarah Arons, Elad Elster, Limor Fix, Sela Mador-Haim, Michael Mishaeli, Jonathan Shalev, Eli Singerman, Andreas Tiemeyer, Moshe Y. Vardi, Lenore D. Zuck (2005) Formal verification of backward compatibility of microcode. In CAV 2005, volume 3576 of LNCS, pp 185–198
Richard K. Guy (1983) Don’t try to solve these problems. The American Mathematical Monthly, 90(1):35–38, 39–41
Chung-Kil Hur, Derek Dreyer (2011) A kripke logical relation between ML and assembly. In POPL 2011, pp 133–146
LeroyXavierFormal verification of a realistic compilerCommunications of the ACM,200952710711510.1145/1538788.1538814
Chung-Kil Hur, Georg Neis, Derek Dreyer, Viktor Vafeiadis (2014) A Logical Step Forward in Parametric Bisimulations. Technical Report 003, MPI-SWS, January
John C. Mitchell (1986) Representation independence and data abstraction. In POPL 1986, pp 263–276
Andrew M. Pitts (2002) Operational semantics and program equivalence. In Applied Semantics Summer School, volume 2395 of LNCS, pp 378–412
Ştefan Ciobâcă, Dorel Lucanu, Vlad Rusu, Grigore Roşu (2015) A theoretical foundation for programming language aggregation. In WADT 2014, volume 9463 of LNCS, pp 30–47
Grigore Roşu, Andrei Ştefănescu, RŞ;tefan Ciobâcă, Brandon M. Moore (2013) One-path reachability logic. In LICS 2013, pp 358–367. IEEE
e_1_2_1_2_17_2
e_1_2_1_2_16_2
e_1_2_1_2_19_2
e_1_2_1_2_38_2
e_1_2_1_2_18_2
e_1_2_1_2_39_2
e_1_2_1_2_32_2
e_1_2_1_2_33_2
e_1_2_1_2_11_2
e_1_2_1_2_30_2
e_1_2_1_2_10_2
e_1_2_1_2_31_2
e_1_2_1_2_13_2
e_1_2_1_2_36_2
e_1_2_1_2_12_2
e_1_2_1_2_37_2
e_1_2_1_2_15_2
e_1_2_1_2_34_2
e_1_2_1_2_14_2
e_1_2_1_2_35_2
e_1_2_1_2_40_2
e_1_2_1_2_29_2
e_1_2_1_2_27_2
e_1_2_1_2_28_2
e_1_2_1_2_21_2
e_1_2_1_2_22_2
e_1_2_1_2_43_2
e_1_2_1_2_42_2
e_1_2_1_2_20_2
e_1_2_1_2_41_2
e_1_2_1_2_25_2
e_1_2_1_2_26_2
e_1_2_1_2_23_2
e_1_2_1_2_24_2
e_1_2_1_2_9_2
e_1_2_1_2_5_2
e_1_2_1_2_6_2
e_1_2_1_2_7_2
e_1_2_1_2_8_2
e_1_2_1_2_1_2
e_1_2_1_2_2_2
e_1_2_1_2_3_2
e_1_2_1_2_4_2
References_xml – reference: Chung-Kil Hur, Derek Dreyer, Georg Neis, Viktor Vafeiadis (2012) The marriage of bisimulations and kripke logical relations. In POPL 2012, pp 59–72
– reference: Fabio Somenzi, Andreas Kuehlmann (2006) Electronic Design Automation For Integrated Circuits Handbook, volume 2, chapter 4: Equivalence Checking. CRC Press
– reference: Grigore Roşu (2015) Matching logic—extended abstract. In RTA 2015, volume 36 of LIPIcs, pp 5–21
– reference: Davide Sangiorgi, Naoki Kobayashi, Eijiro Sumii (2011) Environmental bisimulations for higher-order languages. ACM Transactions on Programming Languages and Systems, 33(1):5
– reference: José Meseguer, Grigore Roşu (2004) Rewriting logic semantics: From language specifications to formal analysis tools. In IJCAR 2004, volume 3097 of LNCS, pp 1–44
– reference: Sagar Chaki, Arie Gurfinkel, Ofer Strichman (2012) Regression verification for multi-threaded programs. In VMCAI 2012, volume 7148 of LNCS, pp 119–135
– reference: HoareCharlesAntony RichardAn axiomatic basis for computer programmingCommunications of the ACM1969121057658010.1145/363235.3632590179.23105
– reference: Denis Bogdănaş, Grigore Roşu (2015) K-Java: A Complete Semantics of Java. In POPL 2015, pp 445–456
– reference: GodlinBennyStrichmanOferRegression verification: proving the equivalence of similar programsSoftware Testing, Verification and Reliability201323324125810.1002/stvr.1472
– reference: Robin Milner (1989) Communication and concurrency. Prentice Hall
– reference: Davide Sangiorgi (2011) Introduction to Bisimulation and Coinduction. Cambridge University Press, New York, NY, USA
– reference: Dorel Lucanu, Vlad Rusu, Andrei Arusoaie A Generic Framework for Symbolic Execution: Theory and Applications. Journal of Symbolic Computation, to appear
– reference: Grigore Roşu, Andrei Ştefănescu, RŞ;tefan Ciobâcă, Brandon M. Moore (2013) One-path reachability logic. In LICS 2013, pp 358–367. IEEE
– reference: Dorel Lucanu, Vlad Rusu (2014) Program equivalence by circular reasoning. Formal Aspects of Computing, pp 1–26
– reference: Nick Benton, Chung-Kil Hur (2009) Biorthogonality, step-indexing and compiler correctness. In ICFP 2009, pp 97–108
– reference: Sudipta Kundu, Zachary Tatlock, Sorin Lerner (2009) Proving optimizations correct using parameterized program equivalence. In PLDI 2009, pp 327–337. ACM
– reference: LeroyXavierFormal verification of a realistic compilerCommunications of the ACM,200952710711510.1145/1538788.1538814
– reference: Chucky Ellison, Grigore Roşu (2012) An executable formal semantics of C with applications. In POPL 2012, pp 533–544
– reference: Andrei Ştefănescu, Ştefan Ciobâcă, Radu Mereuţă, Brandon M. Moore, Traian Florin Şerbănuţă, Grigore Roşu (2014) All-path reachability logic. In RTA-TLCA’14, volume 8560 of LNCS, pp 425–440
– reference: Sorin Crăciunescu (2002) Proving the equivalence of CLP programs. In ICLP 2002, volume 2401 of LNCS, pp 287–301
– reference: Daejun Park, Andrei Ştefănescu, Grigore Roşu (2015) KJS: A complete formal semantics of JavaScript. In PLDI 2015, pp 346–356
– reference: Nick Benton (2004) Simple relational correctness proofs for static analyses and program transformations. In POPL 2004, pp 14–25
– reference: GodlinBennyStrichmanOferInference rules for proving the equivalence of recursive proceduresActa Informatica2008456403439242556010.1007/s00236-008-0075-21161.68013
– reference: Shuvendu K. Lahiri, Chris Hawblitzel, Ming Kawaguchi, Henrique Rebêlo (2012) SYMDIFF: A language-agnostic semantic diff tool for imperative programs. In CAV 2012, volume 7358 of LNCS, pp 712–717
– reference: Amal Ahmed, Derek Dreyer, Andreas Rossberg (2009) State-dependent representation independence. In POPL 2009, pp 340–353
– reference: Grigore Roşu, Chucky Ellison, Wolfram Schulte (2010) Matching logic: An alternative to Hoare/Floyd logic. In AMAST 2010, volume 6486 of LNCS, pp 142–162
– reference: Ştefan Ciobâcă, Dorel Lucanu, Vlad Rusu, Grigore Roşu (2015) A theoretical foundation for programming language aggregation. In WADT 2014, volume 9463 of LNCS, pp 30–47
– reference: George Necula (2000) Translation validation for an optimizing compiler. In PLDI 2000, pp 83–94. ACM
– reference: Grigore Roşu (2006) Equality of streams is a Π20\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${\Pi}_{2}^{0}$$\end{document}-complete problem. In ICFP 2006, pp 184–191. ACM
– reference: Chung-Kil Hur, Derek Dreyer (2011) A kripke logical relation between ML and assembly. In POPL 2011, pp 133–146
– reference: Ştefan Ciobâcă (2014) Reducing partial equivalence to partial correctness. In SYNASC 2014, pp 164–171. IEEE
– reference: Grigore Roşu, Andrei Ştefănescu (2012) Towards a unified theory of operational and axiomatic semantics. In ICALP 2012, volume 7392 of LNCS, pp 351–363
– reference: Yves Bertot, Pierre Castran (2010) Interactive Theorem Proving and Program Development: Coq’Art The Calculus of Inductive Constructions. Springer, 1st edition
– reference: Richard K. Guy (1983) Don’t try to solve these problems. The American Mathematical Monthly, 90(1):35–38, 39–41
– reference: John C. Mitchell (1986) Representation independence and data abstraction. In POPL 1986, pp 263–276
– reference: Tamarah Arons, Elad Elster, Limor Fix, Sela Mador-Haim, Michael Mishaeli, Jonathan Shalev, Eli Singerman, Andreas Tiemeyer, Moshe Y. Vardi, Lenore D. Zuck (2005) Formal verification of backward compatibility of microcode. In CAV 2005, volume 3576 of LNCS, pp 185–198
– reference: Claudia Elena Chiriţă, Traian Florin Şerbănuţă (2015) An institutional foundation for the K\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${\mathbb{K}}$$\end{document} semantic framework. In WADT 2014, volume 9463 of LNCS, pp 9–29
– reference: Grigore Roşu, Andrei Ştefănescu (2012) Checking reachability using matching logic. In OOPSLA, pp 555–574. ACM
– reference: Traian-Florin Şerbănuţă, Grigore Roşu, José Meseguer (2009) A rewriting logic approach to operational semantics. Information and Computation, 207(2):305–340
– reference: John C. Reynolds (2002) Separation logic: A logic for shared mutable data structures. In LICS 2002, pp 55–74
– reference: Anne Elisabeth Haxthausen, Friederike Nickl (1996) Pushouts of order-sorted algebraic specifications. In AMAST 1996, pp 132–147. Springer-Verlag
– reference: Chung-Kil Hur, Georg Neis, Derek Dreyer, Viktor Vafeiadis (2014) A Logical Step Forward in Parametric Bisimulations. Technical Report 003, MPI-SWS, January
– reference: Andrew M. Pitts (2002) Operational semantics and program equivalence. In Applied Semantics Summer School, volume 2395 of LNCS, pp 378–412
– ident: e_1_2_1_2_8_2
  doi: 10.1007/978-3-319-08918-8_29
– ident: e_1_2_1_2_32_2
  doi: 10.1007/3-540-45699-6_8
– ident: e_1_2_1_2_14_2
  doi: 10.1007/s00236-008-0075-2
– ident: e_1_2_1_2_41_2
– ident: e_1_2_1_2_30_2
  doi: 10.1145/358438.349314
– ident: e_1_2_1_2_40_2
  doi: 10.1017/CBO9780511777110
– ident: e_1_2_1_2_7_2
  doi: 10.1007/978-3-319-28114-8_3
– ident: e_1_2_1_2_25_2
  doi: 10.1007/978-3-642-38613-8_25
– ident: e_1_2_1_2_17_2
  doi: 10.1145/1925844.1926402
– ident: e_1_2_1_2_23_2
  doi: 10.1145/1538788.1538814
– ident: e_1_2_1_2_33_2
  doi: 10.1145/2398857.2384656
– ident: e_1_2_1_2_39_2
– ident: e_1_2_1_2_5_2
  doi: 10.1145/1631687.1596567
– ident: e_1_2_1_2_18_2
  doi: 10.1145/2103621.2103666
– ident: e_1_2_1_2_16_2
  doi: 10.1080/00029890.1983.11971148
– ident: e_1_2_1_2_2_2
  doi: 10.1007/11513988_20
– ident: e_1_2_1_2_36_2
  doi: 10.1007/978-3-642-17796-5_9
– ident: e_1_2_1_2_12_2
  doi: 10.1007/3-540-45619-8_20
– ident: e_1_2_1_2_24_2
  doi: 10.1007/978-3-642-31424-7_54
– ident: e_1_2_1_2_43_2
  doi: 10.1016/j.ic.2008.03.026
– ident: e_1_2_1_2_31_2
  doi: 10.1145/2813885.2737991
– ident: e_1_2_1_2_11_2
  doi: 10.1109/SYNASC.2014.30
– ident: e_1_2_1_2_26_2
– ident: e_1_2_1_2_1_2
  doi: 10.1145/1594834.1480925
– ident: e_1_2_1_2_13_2
  doi: 10.1145/2103621.2103719
– ident: e_1_2_1_2_37_2
  doi: 10.1109/LICS.2002.1029817
– ident: e_1_2_1_2_29_2
  doi: 10.1007/978-3-540-25984-8_1
– ident: e_1_2_1_2_28_2
  doi: 10.1145/512644.512669
– ident: e_1_2_1_2_20_2
– ident: e_1_2_1_2_9_2
  doi: 10.1007/978-3-319-28114-8_2
– ident: e_1_2_1_2_35_2
  doi: 10.1109/LICS.2013.42
– ident: e_1_2_1_2_3_2
– ident: e_1_2_1_2_4_2
  doi: 10.1145/982962.964003
– ident: e_1_2_1_2_6_2
  doi: 10.1145/2775051.2676982
– ident: e_1_2_1_2_21_2
  doi: 10.1145/363235.363259
– ident: e_1_2_1_2_34_2
  doi: 10.1007/978-3-642-31585-5_33
– ident: e_1_2_1_2_42_2
  doi: 10.1145/1889997.1890002
– ident: e_1_2_1_2_22_2
  doi: 10.1145/1543135.1542513
– ident: e_1_2_1_2_10_2
  doi: 10.1007/978-3-642-27940-9_9
– ident: e_1_2_1_2_27_2
– ident: e_1_2_1_2_15_2
  doi: 10.1002/stvr.1472
– ident: e_1_2_1_2_19_2
  doi: 10.1007/BFb0014312
– ident: e_1_2_1_2_38_2
  doi: 10.1145/1160074.1159827
SSID ssj0015911
Score 2.150419
Snippet Two programs are fully equivalent if, for the same input, either they both diverge or they both terminate with the same result. Full equivalence is an adequate...
Two programs are mutually equivalent if, for the same input, either they both diverge or they both terminate with the same result. Mutual equivalence is an...
SourceID hal
proquest
crossref
springer
SourceType Open Access Repository
Aggregation Database
Enrichment Source
Index Database
Publisher
StartPage 469
SubjectTerms Compilers
Computer Science
Equivalence
Languages
Logic in Computer Science
Math Applications in Computer Science
Original Article
Programming Languages
Proving
Semantics
Sequences
Sound
Theory of Computation
Transformations
SummonAdditionalLinks – databaseName: SpringerLink Contemporary (1997 - Present)
  dbid: RSV
  link: http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1Lb9swDCbWrIddlrXbsGxZoRY9tRBgy5Il3RYMK3IIgqKPoDfD1gMLUCRbk_T3j3RsIxvaAdvVpmmBIkVKpD4CnKZCaB-U4XnlFZci5txQmRiqTlWmSpeyxumeTfR0au7u7GVzj3vVVru3Kcl6pe4uu1F0QoVmuAPO8pTrPXiJ3s6QNV5dz7rUgbJ1013cqUtO8FxtKvMpFr85o73vVAq5E2f-kRqtPc5F_7_G-gZeNwEmG2014gBehMUh9NvmDayx5bfwZcTas0o-73rhrhkObBnZFuCZYUTL6ICeNWVcLPzczFE3icU7uL34dvN1zJt2CtyhG15zmXmdGW2rqIIXNlbReiWCN3mmgzXK5TFJosgrjNmqMojSRRGtlF5IpV1eZe-ht1guwgdgprTBuyhTZ6wU0pkSvVziVfQiCozwBpC0ci1cgzVOLS_uiw4luZZQQfVlJKFCD-Cs--THFmjjb8QnOFkdHUFkj0eTgp6hw5VKCfMoBjBs57JoDHNVpLhAWcIwMgM47l6jSVGepFyE5QZpDPXeTnKD_zlv53eHxXOj-vhP1J_glagVhPRkCL31wyZ8hn33uJ6vHo5qnf4Fbfftrw
  priority: 102
  providerName: Springer Nature
Title A language-independent proof system for full program equivalence
URI https://link.springer.com/article/10.1007/s00165-016-0361-7
https://www.proquest.com/docview/1787900778
https://www.proquest.com/docview/1816030687
https://inria.hal.science/hal-01245528
Volume 28
WOSCitedRecordID wos000376062700006&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: 1433-299X
  dateEnd: 20190131
  omitProxy: false
  ssIdentifier: ssj0015911
  issn: 0934-5043
  databaseCode: P5Z
  dateStart: 20020501
  isFulltext: true
  titleUrlDefault: https://search.proquest.com/hightechjournals
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: Computer Science Database
  customDbUrl:
  eissn: 1433-299X
  dateEnd: 20190131
  omitProxy: false
  ssIdentifier: ssj0015911
  issn: 0934-5043
  databaseCode: K7-
  dateStart: 20020501
  isFulltext: true
  titleUrlDefault: http://search.proquest.com/compscijour
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: ProQuest Central
  customDbUrl:
  eissn: 1433-299X
  dateEnd: 20190131
  omitProxy: false
  ssIdentifier: ssj0015911
  issn: 0934-5043
  databaseCode: BENPR
  dateStart: 20020501
  isFulltext: true
  titleUrlDefault: https://www.proquest.com/central
  providerName: ProQuest
– providerCode: PRVAVX
  databaseName: SpringerLink
  customDbUrl:
  eissn: 1433-299X
  dateEnd: 20211231
  omitProxy: false
  ssIdentifier: ssj0015911
  issn: 0934-5043
  databaseCode: RSV
  dateStart: 19970101
  isFulltext: true
  titleUrlDefault: https://link.springer.com/search?facet-content-type=%22Journal%22
  providerName: Springer Nature
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV1Lb9QwEB7RlgMXylMslMogTiCLxPHzBAtqVYlqtSpQVVyixA91JbTbdnf7-5nJOqEg0QsXHxLHtjKfPeOZ0TcAb0ohTIjKct0GxaVImltKE0PotE2pTCM7nu7TYzOZ2LMzN80Ot2VOq-zPxO6gDgtPPvL3JSLLEfmM_XBxyalqFEVXcwmNLdjBSUvC-RfDhyiCcl39Xby0S05MXX1Us-hIREtNaWt4n650yc0femnrnLIib5icf0VJO-VzuPu_y34A97PZycYbnDyEO3H-CHb7kg4s7_DH8HHMeg8mnw0VclcMZ10ktqF9ZmjnMnLbs5zcxeLleoaIpSGewPfDg2-fj3gussA9KucVl1UwFa6xTSoG4VKbXFAiBqsrE51VXqeiSEK3aMm1TRSNTyI5KYOQynjdVk9he76Yx2fAbONi8EmW3joppLcN6r4iqBREEmj3jaDof3HtMwM5FcL4WQ_cyZ1Uaso6I6nUZgRvh08uNvQbt3V-jXIb-hFx9tH4uKZnqIalUsJeixHs9YKq83Zd1r-lNIJXw2vcaBQ9aeZxscY-lipyF9riPO96ONwY4l-ren77hC_gnuhQSGDcg-3V1Tq-hLv-ejVbXu3DzqeDyfRkv8M1tlP1A9uTr6e_AMc_--w
linkProvider ProQuest
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V1Lb9QwEB61BQkulFfVLQUMggvIInFsxz5UZQVUW3VZ9VBQxSUkfoiVqt22u1vEn-I3MpNNQkGitx64Js44jr8Zjz2TbwBepELkPijDdeUVlyJqbihNDKFTlanKS1nzdH8e5qOROT62hyvws_0XhtIqW5tYG2o_dXRG_iZFZFkinzG7p2ecqkZRdLUtobGExUH48R23bLOd_fc4vy-F2Ptw9G7Am6oC3OFqNOcy83mGsqqoghc2VtF6JYI3OsuDNcrpmCRR6Apdl6oMonRRRCulF1LlTlcZyl2FG1LiZgn151B96aIWytb1fhObSU7MYG0UNalJS1NNaXK4f890yvM_1sHVb5SFecnF_SsqWy92e-v_22e6C3cat5r1l3pwD1bC5D6styUrWGPBHsDbPmtPaPm4qwA8ZzjKaWRLWmuGfjyjsARrktdYOFuMUSNJxEP4dC3j2IC1yXQSNoGZ0gbvokydsVJIZ0pc2xOvohdRoF_bg6Sd0sI1DOtU6OOk6LihaxQUlFVHKCjyHrzqHjld0otc1fg54qRrR8Tgg_6woGvoZkilhLkQPdhugVE05mhW_EZFD551t9GQUHSonITpAtsYqjieaIP9vG7hd0nEv95q6-oOn8KtwdHHYTHcHx08gtui1gBShG1Ym58vwmO46S7m49n5k1qXGHy9blT-AvE8VsM
linkToPdf http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV1LT9wwEB7xUtVLeVbdloJBnEAWiWPH9q2rlhVVVyskHuIWJX6IlaossFl-P55sEkEFSKjXZOxY43Fm7Bl_H8BBzJi0TiiaFlZQznxKFZaJBdMp8ljInNc43VdDORqp62t91vCcTttq9zYlOb_TgChNZXV8a_1xd_ENIxUsOgu74SSNqVyEZY6cQbhdP7_q0ghC1wS8YdfOKUJ1tWnNl7p45pgWb7As8knM-U-atPY-g9X_HvcafGoCT9KfW8o6LLhyA1ZbUgfSrPFN-NEn7RkmHXccuRUJg5x4Mgd-JiHSJXhwT5ryLuLuZuNgs9jFFlwOTi5-ntKGZoGa4J4ryhMrEyV14YWzTPvCayuYsypNpNNKmNRHkWdpEWK5IncsN555zbllXEiTFslnWConpfsCROXaWeN5bJTmjBuVB-8XWeEt8yxEfj2IWh1npsEgRyqMv1mHnlxrKMO6M9RQJntw2DW5nQNwvCW8Hyauk0Po7NP-MMNnwRFzIZh6YD3Ybuc1axbsNIvDj0sjtpHqwV73Oiw1zJ_kpZvMgoxCTu4oVeE7R-1cP-nitVF9fZf0Lnw4-zXIhr9Hf77BR1bbCprMNixV9zP3HVbMQzWe3u_Upv4I3xD5dw
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=A+language-independent+proof+system+for+full+program+equivalence&rft.jtitle=Formal+aspects+of+computing&rft.au=Ciobaca%2C+Stefan&rft.au=Lucanu%2C+Dorel&rft.au=Rusu%2C+Vlad&rft.au=Rosu%2C+Grigore&rft.date=2016-05-01&rft.issn=0934-5043&rft.eissn=1433-299X&rft.volume=28&rft.issue=3&rft.spage=469&rft.epage=497&rft_id=info:doi/10.1007%2Fs00165-016-0361-7&rft.externalDBID=NO_FULL_TEXT
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0934-5043&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0934-5043&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0934-5043&client=summon