Top Banner
Industrial Standards, Computer Algebra, and Formal Verification Dominik Dietrich Lutz Schr¨ oder Ewaryst Schulz DFKI Bremen, Germany [email protected] 20th International Workshop on Algebraic Development Techniques Schloss Etelsen, Germany 4th July 2010 Industrial Standards, and Formal Verification D. Dietrich, L. Schr¨ oder, E. Schulz German Research Center for Artificial Intelligence
70

Industrial Standards, Computer Algebra, and Formal Verication

Jul 09, 2015

Download

Documents

Ewaryst Schulz

We develop a language for specification of engineering calculations (EnCL, previously CSL) and apply it to formalize the industrial standard EN1591 concerning gasketed circular flange connections. We furthermore present a methodology how to carry out such specified calculations using a computer algebra system. The results are verified using theorem provers connected to the Hets system. In order to do so we define an institution for EnCL.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Industrial Standards, Computer Algebra, and Formal Verication

Industrial Standards, Computer Algebra,and Formal Verification

Dominik Dietrich Lutz Schroder Ewaryst Schulz

DFKI Bremen, [email protected]

20th International Workshop on Algebraic Development TechniquesSchloss Etelsen, Germany

4th July 2010

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 2: Industrial Standards, Computer Algebra, and Formal Verication

The FlangeThe Flange

A CAD design of a flange-bolt-gasket system.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 3: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591The Industrial Standard EN 1591

A standard for gasketed circularflange connections

The standard consists ofI Applicability and basic

assumptions

I Nomenclature

I Calculation method

The calculation method assures theimpermeability and mechanicalstrength of the flange-bolt-gasketsystem.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 4: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591The Industrial Standard EN 1591

A standard for gasketed circularflange connections

The standard consists ofI Applicability and basic

assumptions

I Nomenclature

I Calculation method

The calculation method assures theimpermeability and mechanicalstrength of the flange-bolt-gasketsystem.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 5: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591The Industrial Standard EN 1591

A standard for gasketed circularflange connections

The standard consists ofI Applicability and basic

assumptions

I Nomenclature

I Calculation method

The calculation method assures theimpermeability and mechanicalstrength of the flange-bolt-gasketsystem.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 6: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591The Industrial Standard EN 1591

A standard for gasketed circularflange connections

The standard consists ofI Applicability and basic

assumptions

I Nomenclature

I Calculation method

The calculation method assures theimpermeability and mechanicalstrength of the flange-bolt-gasketsystem.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 7: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591cont.

The Industrial Standard EN 1591cont.

The input parameters to the calculation method

I Flange data, e.g., dimensions and material constants

I Mounting data such as screw tightening method

I Data for operating states such as pressure and temperature

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 8: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591cont.

The Industrial Standard EN 1591cont.

The input parameters to the calculation method

I Flange data, e.g., dimensions and material constants

I Mounting data such as screw tightening method

I Data for operating states such as pressure and temperature

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 9: Industrial Standards, Computer Algebra, and Formal Verication

The Industrial Standard EN 1591cont.

The Industrial Standard EN 1591cont.

The input parameters to the calculation method

I Flange data, e.g., dimensions and material constants

I Mounting data such as screw tightening method

I Data for operating states such as pressure and temperature

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 10: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and IterationCalculation Method and Iteration

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 11: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and IterationCalculation Method and Iteration

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 12: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and IterationCalculation Method and Iteration

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 13: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and IterationCalculation Method and Iteration

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 14: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and MaximizeCalculation Method and Maximize

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 15: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and MaximizeCalculation Method and Maximize

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 16: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and MaximizeCalculation Method and Maximize

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 17: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Method and MaximizeCalculation Method and Maximize

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 18: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Methodand Computer Algebra

Calculation Methodand Computer Algebra

The formulas occurring in the standard can be calculated using

I Standard real arithmetic

I Real functions such as cos, n√

, etc.

I Special functions such as maximize

I Control structures such as conditional statements and iteration

Use a computer algebra system for the calculations.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 19: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Methodand Computer Algebra

Calculation Methodand Computer Algebra

The formulas occurring in the standard can be calculated using

I Standard real arithmetic

I Real functions such as cos, n√

, etc.

I Special functions such as maximize

I Control structures such as conditional statements and iteration

Use a computer algebra system for the calculations.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 20: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Methodand Computer Algebra

Calculation Methodand Computer Algebra

The formulas occurring in the standard can be calculated using

I Standard real arithmetic

I Real functions such as cos, n√

, etc.

I Special functions such as maximize

I Control structures such as conditional statements and iteration

Use a computer algebra system for the calculations.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 21: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Methodand Computer Algebra

Calculation Methodand Computer Algebra

The formulas occurring in the standard can be calculated using

I Standard real arithmetic

I Real functions such as cos, n√

, etc.

I Special functions such as maximize

I Control structures such as conditional statements and iteration

Use a computer algebra system for the calculations.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 22: Industrial Standards, Computer Algebra, and Formal Verication

Calculation Methodand Computer Algebra

Calculation Methodand Computer Algebra

The formulas occurring in the standard can be calculated using

I Standard real arithmetic

I Real functions such as cos, n√

, etc.

I Special functions such as maximize

I Control structures such as conditional statements and iteration

Use a computer algebra system for the calculations.

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 23: Industrial Standards, Computer Algebra, and Formal Verication

Formal VerificationFormal Verification

Correctness of calculations crucial for application to safety criticalenvironments

I CASs do not provide justifications of calculations

I xx simplifies to 1 in the Reduce CAS

Results of the CAS can be formally verified

I One can generate lemmas from CAS result to be proved

I Checking is easier than finding

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 24: Industrial Standards, Computer Algebra, and Formal Verication

Formal VerificationFormal Verification

Correctness of calculations crucial for application to safety criticalenvironments

I CASs do not provide justifications of calculations

I xx simplifies to 1 in the Reduce CAS

Results of the CAS can be formally verified

I One can generate lemmas from CAS result to be proved

I Checking is easier than finding

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 25: Industrial Standards, Computer Algebra, and Formal Verication

Formal VerificationFormal Verification

Correctness of calculations crucial for application to safety criticalenvironments

I CASs do not provide justifications of calculations

I xx simplifies to 1 in the Reduce CAS

Results of the CAS can be formally verified

I One can generate lemmas from CAS result to be proved

I Checking is easier than finding

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 26: Industrial Standards, Computer Algebra, and Formal Verication

Formal VerificationFormal Verification

Correctness of calculations crucial for application to safety criticalenvironments

I CASs do not provide justifications of calculations

I xx simplifies to 1 in the Reduce CAS

Results of the CAS can be formally verified

I One can generate lemmas from CAS result to be proved

I Checking is easier than finding

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 27: Industrial Standards, Computer Algebra, and Formal Verication

Hets- the Heterogeneous Tool SetHets- the Heterogeneous Tool Set

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 28: Industrial Standards, Computer Algebra, and Formal Verication

Specification Language CSLSpecification Language CSL

Design goals of CSL

I Formal specification of the calculation method

I Specification of assignments in an arbitrary order, but:We require assignments to be unique and sortable w.r.t. thedependency order

I Generic interface to CAS

Translation to CAS

I Suitably ordered assignments together with control structures form animperative program

I Constants depending on constants which were modified are recomputed

I Executing the program using CAS yields a symbolic valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 29: Industrial Standards, Computer Algebra, and Formal Verication

Specification Language CSLSpecification Language CSL

Design goals of CSL

I Formal specification of the calculation method

I Specification of assignments in an arbitrary order, but:We require assignments to be unique and sortable w.r.t. thedependency order

I Generic interface to CAS

Translation to CAS

I Suitably ordered assignments together with control structures form animperative program

I Constants depending on constants which were modified are recomputed

I Executing the program using CAS yields a symbolic valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 30: Industrial Standards, Computer Algebra, and Formal Verication

Specification Language CSLSpecification Language CSL

Design goals of CSL

I Formal specification of the calculation method

I Specification of assignments in an arbitrary order, but:We require assignments to be unique and sortable w.r.t. thedependency order

I Generic interface to CAS

Translation to CAS

I Suitably ordered assignments together with control structures form animperative program

I Constants depending on constants which were modified are recomputed

I Executing the program using CAS yields a symbolic valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 31: Industrial Standards, Computer Algebra, and Formal Verication

Specification Language CSLSpecification Language CSL

Design goals of CSL

I Formal specification of the calculation method

I Specification of assignments in an arbitrary order, but:We require assignments to be unique and sortable w.r.t. thedependency order

I Generic interface to CAS

Translation to CAS

I Suitably ordered assignments together with control structures form animperative program

I Constants depending on constants which were modified are recomputed

I Executing the program using CAS yields a symbolic valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 32: Industrial Standards, Computer Algebra, and Formal Verication

Specification Language CSLSpecification Language CSL

Design goals of CSL

I Formal specification of the calculation method

I Specification of assignments in an arbitrary order, but:We require assignments to be unique and sortable w.r.t. thedependency order

I Generic interface to CAS

Translation to CAS

I Suitably ordered assignments together with control structures form animperative program

I Constants depending on constants which were modified are recomputed

I Executing the program using CAS yields a symbolic valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 33: Industrial Standards, Computer Algebra, and Formal Verication

Specification Language CSLSpecification Language CSL

Design goals of CSL

I Formal specification of the calculation method

I Specification of assignments in an arbitrary order, but:We require assignments to be unique and sortable w.r.t. thedependency order

I Generic interface to CAS

Translation to CAS

I Suitably ordered assignments together with control structures form animperative program

I Constants depending on constants which were modified are recomputed

I Executing the program using CAS yields a symbolic valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 34: Industrial Standards, Computer Algebra, and Formal Verication

A Little CSL ExampleA Little CSL Example

Calculating a root of cos using Newton’s Method

The CSL specification

y := cos(x) %(A)%

z := sin(x) %(B)%

x := 10 %(C)%

repeat

x := x + y/z %(D)%

until abs(y) < 0.001

Building the Dependency Graph

x

y

A

z

B

C

D

The translation yields this program:C;A;B;repeat D;A;B; until abs(y) < 0.001

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 35: Industrial Standards, Computer Algebra, and Formal Verication

A Little CSL ExampleA Little CSL Example

Calculating a root of cos using Newton’s Method

The CSL specification

y := cos(x) %(A)%

z := sin(x) %(B)%

x := 10 %(C)%

repeat

x := x + y/z %(D)%

until abs(y) < 0.001

Building the Dependency Graph

x

y

A

z

B

C

D

The translation yields this program:C;A;B;repeat D;A;B; until abs(y) < 0.001

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 36: Industrial Standards, Computer Algebra, and Formal Verication

A Little CSL ExampleA Little CSL Example

Calculating a root of cos using Newton’s Method

The CSL specification

y := cos(x) %(A)%

z := sin(x) %(B)%

x := 10 %(C)%

repeat

x := x + y/z %(D)%

until abs(y) < 0.001

Building the Dependency Graph

x

y

A

z

B

C

D

The translation yields this program:C;A;B;repeat D;A;B; until abs(y) < 0.001

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 37: Industrial Standards, Computer Algebra, and Formal Verication

A Little CSL ExampleA Little CSL Example

Calculating a root of cos using Newton’s Method

The CSL specification

y := cos(x) %(A)%

z := sin(x) %(B)%

x := 10 %(C)%

repeat

x := x + y/z %(D)%

until abs(y) < 0.001

Building the Dependency Graph

x

y

A

z

B

C

D

The translation yields this program:C;A;B;repeat D;A;B; until abs(y) < 0.001

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 38: Industrial Standards, Computer Algebra, and Formal Verication

A Little CSL ExampleA Little CSL Example

Calculating a root of cos using Newton’s Method

The CSL specification

y := cos(x) %(A)%

z := sin(x) %(B)%

x := 10 %(C)%

repeat

x := x + y/z %(D)%

until abs(y) < 0.001

Building the Dependency Graph

x

y

A

z

B

C

D

The translation yields this program:C;A;B;repeat D;A;B; until abs(y) < 0.001

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 39: Industrial Standards, Computer Algebra, and Formal Verication

A Little CSL ExampleA Little CSL Example

Calculating a root of cos using Newton’s Method

The CSL specification

y := cos(x) %(A)%

z := sin(x) %(B)%

x := 10 %(C)%

repeat

x := x + y/z %(D)%

until abs(y) < 0.001

Building the Dependency Graph

x

y

A

z

B

C

D

The translation yields this program:C;A;B;repeat D;A;B; until abs(y) < 0.001

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 40: Industrial Standards, Computer Algebra, and Formal Verication

Verified CASVerified CAS

Verification Points in CSL

I are positions of subterms of CSL statements

I Evaluating a such marked term produces a verification condition

I The CAS result is extended by a list of verification conditions

I Use Hets to prove verification conditions

Specifying CAS program semantics in HasCASL

I Standard interpretation of programs as state transformers

I Properties of algorithms specified in CSL can be verified

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 41: Industrial Standards, Computer Algebra, and Formal Verication

Verified CASVerified CAS

Verification Points in CSL

I are positions of subterms of CSL statements

I Evaluating a such marked term produces a verification condition

I The CAS result is extended by a list of verification conditions

I Use Hets to prove verification conditions

Specifying CAS program semantics in HasCASL

I Standard interpretation of programs as state transformers

I Properties of algorithms specified in CSL can be verified

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 42: Industrial Standards, Computer Algebra, and Formal Verication

Verified CASVerified CAS

Verification Points in CSL

I are positions of subterms of CSL statements

I Evaluating a such marked term produces a verification condition

I The CAS result is extended by a list of verification conditions

I Use Hets to prove verification conditions

Specifying CAS program semantics in HasCASL

I Standard interpretation of programs as state transformers

I Properties of algorithms specified in CSL can be verified

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 43: Industrial Standards, Computer Algebra, and Formal Verication

Verified CASVerified CAS

Verification Points in CSL

I are positions of subterms of CSL statements

I Evaluating a such marked term produces a verification condition

I The CAS result is extended by a list of verification conditions

I Use Hets to prove verification conditions

Specifying CAS program semantics in HasCASL

I Standard interpretation of programs as state transformers

I Properties of algorithms specified in CSL can be verified

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 44: Industrial Standards, Computer Algebra, and Formal Verication

Verified CASVerified CAS

Verification Points in CSL

I are positions of subterms of CSL statements

I Evaluating a such marked term produces a verification condition

I The CAS result is extended by a list of verification conditions

I Use Hets to prove verification conditions

Specifying CAS program semantics in HasCASL

I Standard interpretation of programs as state transformers

I Properties of algorithms specified in CSL can be verified

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 45: Industrial Standards, Computer Algebra, and Formal Verication

Verified CASVerified CAS

Verification Points in CSL

I are positions of subterms of CSL statements

I Evaluating a such marked term produces a verification condition

I The CAS result is extended by a list of verification conditions

I Use Hets to prove verification conditions

Specifying CAS program semantics in HasCASL

I Standard interpretation of programs as state transformers

I Properties of algorithms specified in CSL can be verified

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 46: Industrial Standards, Computer Algebra, and Formal Verication

ExampleExample

Verifying a result from the CAS

A CAS program

... Environment = σy := maximize(t, x)

...

I We set verification point at maximizeposition → maximize(t, x) is marked

I CAS computes this expression in context σand retuns result r

I Apply substitution σ to t and obtain t ′

I We produce the verification conditionmaximize(t ′, x) = r

I Translate this equality to HasCASL forproving

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 47: Industrial Standards, Computer Algebra, and Formal Verication

ExampleExample

Verifying a result from the CAS

A CAS program

... Environment = σy := maximize(t, x)

...

I We set verification point at maximizeposition → maximize(t, x) is marked

I CAS computes this expression in context σand retuns result r

I Apply substitution σ to t and obtain t ′

I We produce the verification conditionmaximize(t ′, x) = r

I Translate this equality to HasCASL forproving

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 48: Industrial Standards, Computer Algebra, and Formal Verication

ExampleExample

Verifying a result from the CAS

A CAS program

... Environment = σy := maximize(t, x)

...

I We set verification point at maximizeposition → maximize(t, x) is marked

I CAS computes this expression in context σand retuns result r

I Apply substitution σ to t and obtain t ′

I We produce the verification conditionmaximize(t ′, x) = r

I Translate this equality to HasCASL forproving

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 49: Industrial Standards, Computer Algebra, and Formal Verication

ExampleExample

Verifying a result from the CAS

A CAS program

... Environment = σy := maximize(t, x)

...

I We set verification point at maximizeposition → maximize(t, x) is marked

I CAS computes this expression in context σand retuns result r

I Apply substitution σ to t and obtain t ′

I We produce the verification conditionmaximize(t ′, x) = r

I Translate this equality to HasCASL forproving

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 50: Industrial Standards, Computer Algebra, and Formal Verication

ExampleExample

Verifying a result from the CAS

A CAS program

... Environment = σy := maximize(t, x)

...

I We set verification point at maximizeposition → maximize(t, x) is marked

I CAS computes this expression in context σand retuns result r

I Apply substitution σ to t and obtain t ′

I We produce the verification conditionmaximize(t ′, x) = r

I Translate this equality to HasCASL forproving

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 51: Industrial Standards, Computer Algebra, and Formal Verication

ExampleExample

Verifying a result from the CAS

A CAS program

... Environment = σy := maximize(t, x)

...

I We set verification point at maximizeposition → maximize(t, x) is marked

I CAS computes this expression in context σand retuns result r

I Apply substitution σ to t and obtain t ′

I We produce the verification conditionmaximize(t ′, x) = r

I Translate this equality to HasCASL forproving

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 52: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and HetsCSL, CAS and Hets

CSL and the Hets Logic Graph

Logic Graph

Isabelle

HasCASL

Isabelle Prover

CSL

CAS InterfaceMathematica

Maxima

Reduce

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 53: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and HetsCSL, CAS and Hets

CSL and the Hets Logic Graph

Logic Graph

Isabelle

HasCASL

Isabelle Prover

CSL

CAS InterfaceMathematica

Maxima

Reduce

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 54: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and HetsCSL, CAS and Hets

CSL and the Hets Logic Graph

Logic Graph

Isabelle

HasCASL

Isabelle Prover

CSL

CAS InterfaceMathematica

Maxima

Reduce

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 55: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and HetsCSL, CAS and Hets

CSL and the Hets Logic Graph

Logic Graph

Isabelle

HasCASL

Isabelle Prover

CSL

CAS InterfaceMathematica

Maxima

Reduce

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 56: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and Hets cont.CSL, CAS and Hets cont.

The CSL institution

I Signatures are collections of real constants and functions over the reals

I Sentences are program statements or first order formulas in an extendedtheory of the reals augmented by the signature

I Models are program states, i.e., symbolic valuations

I A state satisfies a program if it terminates successfully

I A state satisfies a formula φ if φ holds under this valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 57: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and Hets cont.CSL, CAS and Hets cont.

The CSL institution

I Signatures are collections of real constants and functions over the reals

I Sentences are program statements or first order formulas in an extendedtheory of the reals augmented by the signature

I Models are program states, i.e., symbolic valuations

I A state satisfies a program if it terminates successfully

I A state satisfies a formula φ if φ holds under this valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 58: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and Hets cont.CSL, CAS and Hets cont.

The CSL institution

I Signatures are collections of real constants and functions over the reals

I Sentences are program statements or first order formulas in an extendedtheory of the reals augmented by the signature

I Models are program states, i.e., symbolic valuations

I A state satisfies a program if it terminates successfully

I A state satisfies a formula φ if φ holds under this valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 59: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and Hets cont.CSL, CAS and Hets cont.

The CSL institution

I Signatures are collections of real constants and functions over the reals

I Sentences are program statements or first order formulas in an extendedtheory of the reals augmented by the signature

I Models are program states, i.e., symbolic valuations

I A state satisfies a program if it terminates successfully

I A state satisfies a formula φ if φ holds under this valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 60: Industrial Standards, Computer Algebra, and Formal Verication

CSL, CAS and Hets cont.CSL, CAS and Hets cont.

The CSL institution

I Signatures are collections of real constants and functions over the reals

I Sentences are program statements or first order formulas in an extendedtheory of the reals augmented by the signature

I Models are program states, i.e., symbolic valuations

I A state satisfies a program if it terminates successfully

I A state satisfies a formula φ if φ holds under this valuation

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 61: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 62: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 63: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 64: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 65: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 66: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 67: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 68: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 69: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence

Page 70: Industrial Standards, Computer Algebra, and Formal Verication

Summary and OutlookSummary and Outlook

I Specification language CSL for industrial standards

I Synthesis of programs for generic CAS interface

I Verification Points for local verification of CAS result

I Integration of CSL and CAS interface in Hets

I Specification of CSL semantics in HasCASL

I Relating CSL to HasCASL by theoroidal comorphism

Benefit from symbolic character of CAS computations

I Using CAS to simplify CSL specifications for partial instantiations orgiven set of additional assumptions

I Replace special functions by closed solutions found by the CAS

I Finding instantiations for underspecified specifications, e.g., number ofbolts needed for flange to satisfy standard

Industrial Standards, and Formal VerificationD. Dietrich, L. Schroder, E. Schulz

German Research Centerfor Artificial Intelligence