Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
why3
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
126
Issues
126
List
Boards
Labels
Service Desk
Milestones
Merge Requests
16
Merge Requests
16
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Why3
why3
Commits
ae434627
Commit
ae434627
authored
Dec 15, 2015
by
Martin Clochard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
BySo: minor changes
parent
efbee659
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
7 deletions
+9
-7
src/transform/split_goal.ml
src/transform/split_goal.ml
+9
-7
No files found.
src/transform/split_goal.ml
View file @
ae434627
...
...
@@ -260,24 +260,26 @@ let rec split_core sp f =
ret
pos
neg
bwd
fwd
side
|
Tnot
f1
->
let
sf
=
rc
f1
in
let
(
!
)
f
=
-
t_not
f
in
let
(
!
)
=
alias
f1
t_not
in
let
(
|>
)
zero
=
map
(
fun
t
->
!+
(
t_label_copy
t
zero
))
(
!
)
in
ret
(
t_false
|>
sf
.
neg
)
(
t_true
|>
sf
.
pos
)
!
(
sf
.
fwd
)
!
(
sf
.
bwd
)
sf
.
side
|
Tlet
(
t
,
fb
)
->
let
vs
,
f1
,
close
=
t_open_bound_cb
fb
in
let
(
!
)
f
=
alias
fb
(
t_let
t
)
(
close
vs
f
)
in
let
vs
,
f1
=
t_open_bound
fb
in
let
(
!
)
=
alias
f1
(
t_let_close
vs
t
)
in
let
sf
=
rc
f1
in
let
(
!!
)
=
map
(
fun
t
->
Zero
t
)
(
!
)
in
ret
!!
(
sf
.
pos
)
!!
(
sf
.
neg
)
!
(
sf
.
bwd
)
!
(
sf
.
fwd
)
!!
(
sf
.
side
)
|
Tcase
(
t
,
bl
)
->
let
k
join
=
let
case_close
bl2
=
if
Lists
.
equal
(
==
)
bl
bl2
then
f
else
t_case
t
bl2
in
let
sbl
=
List
.
map
(
fun
b
->
let
p
,
f
,
close
=
t_open_branch_cb
b
in
p
,
close
,
split_core
sp
f
)
bl
in
let
blfwd
=
List
.
map
(
fun
(
p
,
close
,
sf
)
->
close
p
sf
.
fwd
)
sbl
in
let
fwd
=
t_case
t
blfwd
in
let
fwd
=
case_close
blfwd
in
let
blbwd
=
List
.
map
(
fun
(
p
,
close
,
sf
)
->
close
p
sf
.
bwd
)
sbl
in
let
bwd
=
t_case
t
blbwd
in
let
bwd
=
case_close
blbwd
in
let
pos
,
neg
,
side
=
join
sbl
in
ret
pos
neg
bwd
fwd
side
in
...
...
@@ -340,8 +342,8 @@ let rec split_core sp f =
split_core
sp
f
end
|
Tquant
(
qn
,
fq
)
->
let
vsl
,
trl
,
f1
,
close
=
t_open_quant_cb
fq
in
let
close
f
=
alias
fq
(
t_quant
qn
)
(
close
vsl
trl
f
)
in
let
vsl
,
trl
,
f1
=
t_open_quant
fq
in
let
close
=
alias
f1
(
t_quant_close
qn
vsl
trl
)
in
let
sf
=
rc
f1
in
let
bwd
=
close
sf
.
bwd
and
fwd
=
close
sf
.
fwd
in
let
pos
,
neg
=
match
qn
with
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment