Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
BW_VersionPositive
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Guillaume GENESTIER
BW_VersionPositive
Commits
1e6b820d
Commit
1e6b820d
authored
Mar 28, 2019
by
Guillaume GENESTIER
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
acc et ordonnabilité in English
parent
bc17dafe
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
30 additions
and
73 deletions
+30
-73
acc.tex
acc.tex
+17
-23
ordonnabilite.tex
ordonnabilite.tex
+13
-50
No files found.
acc.tex
View file @
1e6b820d
\section
{
Accessibilit
é
}
\section
{
Accessibilit
y
}
\begin{defi}
[Constante de type]
$
\CTyp
=
\enscond
{
C
\in\FTyp
}{
C
\text
{
n'est défini par aucune règle
}}$
\end{defi}
\begin{defi}
[Constructeurs]
\[
\CObj
=
\enscond
{
f
\in\FObj
}{
\tau
(
f
)=
\Pi\overline
{
(
x:T
)
}
. C
\,
t
_
1
\dots
t
_{
\arity
(
C
)
}
\text
{
avec
}
C
\in\CTyp
}
.
\]
\begin{defi}
[Constructors]
\[
\CObj
=
\enscond
{
f
\in\FObj
}{
\tau
(
f
)=
\Pi\overline
{
(
x:T
)
}
. C
\,
t
_
1
\dots
t
_{
\arity
(
C
)
}
\text
{
with
}
C
\in\CTyp
}
.
\]
\end{defi}
\begin{rmq}
La contrainte de totalité de l'application n'est pas une nouvelle contrainte
.
En effet, si
$
C
$
est partiellement appliqué, il n'habite pas dans une sorte
,
et le produit ne peut être typé
.
The constraint on the totality of the application is not a new constraint
.
Indeed, if
$
C
$
is partially applied it does not live in a sort
,
hence the product cannot be typed
.
\end{rmq}
\todo
{
Il y a en revanche une vraie restriction ici,
un type défini ne peut pas avoir de constructeurs.
Il faudra se débarrasser de cette restriction.
There is a real restriction here, rewritable types do not have constructors.
}
\begin{defi}
[
Position accessible
]
Pour
$
f
\in\CObj
$
, où
$
\tau
(
f
)=
\Pi\overline
{
(
x:T
)
}
.C
\,
t
_
1
\dots
t
_{
\arity
(
C
)
}$
,
on définit
\[
\Acc
(
f
)=
\enscond
{
i
\<\arity
(
f
)
}{
T
_
i
\in\Froz
_{
\<
C
\bar
t
}}
.
\]
\begin{defi}
[
Accessible position
]
For
$
f
\in\CObj
$
, where
$
\tau
(
f
)=
\Pi\overline
{
(
x:T
)
}
.C
\,
t
_
1
\dots
t
_{
\arity
(
C
)
}$
,
we define
\[
\Acc
(
f
)=
\enscond
{
i
\<\arity
(
f
)
}{
T
_
i
\in\Froz
_{
\<
C
}}
.
\]
\end{defi}
\begin{defi}
[Ord
re associé aux sous-termes accessible
s]
On définit
$
\surterm
_{
acc
}$
comme étant la clôture transitive de
\begin{defi}
[Ord
er associated to accessible subterm
s]
We define
$
\surterm
_{
acc
}$
as the transitive closure of
$
\paren
{
f
\,
t
_
1
\dots
t
_{
\arity
(
c
)
}}
\surterm
_{
acc
}
(
t
_
i
\,\bar
u
)
$
,
où
$
f
\in\CObj
$
,
$
i
\in\Acc
(
f
)
$
et
$
\bar
u
$
est une suite arbitraire de terme
s.
where
$
f
\in\CObj
$
,
$
i
\in\Acc
(
f
)
$
and
$
\bar
u
$
is an arbitrary sequence of term
s.
\end{defi}
\todo
{
Cette définition a l'air vraiment violente.
Ce n'est peut-être pas optimale.
This definition is really violent.
It is not well-founded.
It does not seem to be a problem, but I must stay cautious.
}
ordonnabilite.tex
View file @
1e6b820d
\section
{
Ord
onnabilit
\'
e
}
\section
{
Ord
ering
}
\begin{defi}
[Constructeurs de type]
On se donne un pr
\'
e-ordre bien fond
\'
e
$
\preced
$
sur
$
\FTyp
$
.
\begin{defi}
[Type constructors]
\[
\CTyp
=
\enscond
{
C
\in\FTyp
}{
C
\text
{
is not the head of any rule
}}\]
We suppose given a well-founded pre-order
$
\preced
$
on
$
\CTyp
$
.
\end{defi}
\todo
{
Est-ce que c'est vraiment utile de mettre tout le monde dans le pré-ordre ?
}
\begin{defi}
[Statut]
On munit chaque
$
C
\in\FTyp
$
d'arit
\'
e
$
k
$
d'un tuple d'entiers inf
\'
erieurs
\`
a
$
k
$
,
$
(
i
_
1
,...,i
_
j
)
$
.
\end{defi}
\begin{defi}
[Ordre sur les constructeurs de type]
Soit
$
C
$
de statut
$
(
i
_
1
,
\dots
,i
_
n
)
$
et
$
C'
$
de statut
$
(
j
_
1
,
\dots
,j
_{
n'
}
)
$
.
On a
$
C
\,\bar
l
\>
C'
\,\bar
u
$
si l'une des 2 conditions suivantes est remplie :
\begin{itemize}
\item
$
C
\succ
C'
$
,
\item
$
C
\approx
C'
$
et
$
(
l
_{
i
_
1
}
,
\dots
,l
_{
i
_{
\min
(
n,n'
)
}}
)
\trianglerighteq
_{
lex
}
(
u
_{
j
_
1
}
,
\dots
,u
_{
j
_{
\min
(
n,n'
)
}}
)
$
,
\end{itemize}
\end{defi}
Remarquons que l'ordre strict est d
\'
efini comme l'ordre large, sauf que
$
\rhd
$
remplace
$
\trianglerighteq
$
dans la derni
\`
ere condition.
\todo
{
Si pour chaque classe d'
\'
equivalence pour
$
\approx
$
,
il existe un entier
$
n
$
tel que les
$
st
(
C
)
$
sont de taille inf
\'
erieure
\`
a
$
n
$
,
alors
$
>
$
est bien fond
\'
e.
}
\begin{lem}
Pour tout
$
\sigma
$
, tout
$
C,D
\in\FTyp
$
et toutes familles de termes
$
\bar
s,
\bar
t
$
de la même taille que l'arité des symboles,
$
C
\,\bar
s
\>
D
\,\bar
t
$
implique
$
C
\,
(
\bar
s
\sg
)
\>
D
\,
(
\bar
t
\sg
)
$
.
\end{lem}
\begin{lem}
Pour tout
$
\sigma
$
, tout
$
C,D
\in\FTyp
$
et toutes familles de termes
$
\bar
s,
\bar
t
$
de la même taille que l'arité des symboles,
$
C
\,\bar
s>D
\,\bar
t
$
implique
$
C
\,
(
\bar
s
\sg
)
>D
\,
(
\bar
t
\sg
)
$
.
\end{lem}
\begin{proof}
Cette propriété vient du fait que la même propriété est vraie pour
$
\trianglerighteq
$
et
$
\rhd
$
.
\end{proof}
\begin{defi}
[Frozen type]
Pour
$
C
\in\FTyp
$
, on définit les grammaires suivante
s :
For
$
C
\in\CTyp
$
, we define the following grammar
s :
\begin{align*}
T
_{
\<
C
\bar
l
}
::=
&
\Pi
(x:U
_{
<C
\bar
l
}
). T
_{
\<
C
\bar
l
}
\,\mid\,
C'
\,
u
_
1
\dots
u
_{
\arity
(C')
}&
\text
{
où
}
C'
\,\bar
u
\<
C
\,\bar
l
\\
U
_{
<C
\bar
l
}
::=
&
\Pi
(x:T
_{
\<
C
\bar
l
}
). U
_{
<C
\bar
l
}
\,\mid\,
C'
\,
u
_
1
\dots
u
_{
\arity
(C')
}&
\text
{
où
}
C'
\,\bar
u< C
\,\bar
l
\\
T
_{
\<
C
}
::=
&
\Pi
(x:U
_{
<C
}
). T
_{
\<
C
}
\,\mid\,
C'
\,
u
_
1
\dots
u
_{
\arity
(C')
}&
\text
{
where
}
C'
\<
C
\\
U
_{
<C
}
::=
&
\Pi
(x:T
_{
\<
C
}
). U
_{
<C
}
\,\mid\,
C'
\,
u
_
1
\dots
u
_{
\arity
(C')
}&
\text
{
where
}
C'< C
\\
\end{align*}
On note ces ensembles par
$
\Froz
_{
\<
C
\bar
l
}$
et
$
\Froz
_{
<C
\bar
l
}$
respectivement
.
We denote those sets respectively by
$
\Froz
_{
\<
C
}$
and
$
\Froz
_{
<C
}$
.
\end{defi}
\begin{cond}
{
Frozen rewriting
}
Pour tout
$
C
\in\FTyp
$
, s'il y a une règle
$
C
\,\bar
l
\rul
r
$
, alors
$
\valabs
{
l
}
=
\arity
(
C
)
$
et
$
r
\in\Froz
_{
\<
C
\bar
l
}$
.
\end{cond}
\todo
{
On d
\'
efinit ici la positivit
\'
e non-stricte.
Dans quelle mesure complique-t-elle les preuves ?
J'ai l'impression que tout marche bien.
}
\todo
{
We define here non-strict positivity.
To what extend does it make the proof harder?
I don't see any difficulty.
}
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