Questions tagged [theorem-proving]

Theorem proving, currently the most well-developed subfield of automated reasoning, is the proving of mathematical theorems by a computer program.

Theorem proving, currently the most well-developed subfield of automated reasoning, is the proving of mathematical theorems by a computer program.

Depending on the underlying logic, the problem of deciding the validity of a formula varies from trivial to impossible. Commercial use of automated theorem proving is mostly concentrated in integrated circuit design and verification. Nowadays, AMD, Intel and others use automated theorem proving to verify that division and other operations are correctly implemented in their processors.

In the context of programming, theorem provers are increasingly influencing the design of programming languages, and methods for verifying program correctness.

412 questions
0
votes
1 answer

declare-fun and define-fun in Z3 can't work together?

I need to model length of array. So I declare a function (declare-fun LEN ((Array Int Int)) Int) At the same time, I want to define some macros using define-fun. However, as I tested a little bit on Z3, it seems that define-fun and declare-fun…
monica
  • 995
  • 8
  • 18
-1
votes
1 answer

Consistency checking of a FOL model

I am developing a model in First order logic. I would like to prove that it is consistent. Is it possible? Is there any free tool that I can use for doing this? Or this is impossible due to the Godel theorems? Best regards.
Juan
  • 75
  • 5
-1
votes
1 answer

Proving linear equations/Inequalities automatically

I'm looking for a tool for determining whether a given set of linear equations/inequalities (A) entails another given set of linear equations/inequalities (B). The return value should be either 'true' or 'false'. To illustrate, let's look at…
Assaf
  • 133
  • 1
  • 8
-1
votes
1 answer

How does the below code perform the required function?

Lemma odd_pred2n: forall n : nat, Even.odd n -> {p : nat | n = pred (Div2.double p)}. Lemma even_2n : forall n, even n -> {p : nat | n = double p}. Lemma even_odd_exists_dec:forall n, {p : nat | n = Div2.double p} + {p : nat | n = pred…
-2
votes
1 answer

How does "minimize" work in Z3

I'm using the minimize function in Z3 a lot and I'm worrying about some scalability issues (when the number of variables I'm minimizing grows). What is the underlying algorithm of "minimize" and is there a general way to speed things up?
Halaby
  • 49
  • 4
-4
votes
2 answers

Is it possible to describe a function that is impossible to implement?

I am studying Theoretical Computer Science and I encountered this question: Give example of a function that takes N as input and outputs (Yes,No) such that there is no Java program that can implement this function. How would I go about solving…
Marke
  • 179
  • 4
  • 13
-6
votes
3 answers

Reals and theorem proving with Coq

I am just a beginner in theorem proving with Coq and I am stuck in this goal: 1 subgoal ______________________________________(1/1) ~ ((1 <= 2 - 0)%R /\ (5 <= 2 + 1 + ( 0 - 1))%R) Can anyone make this easy for me?
1 2 3
27
28