]> matita.cs.unibo.it Git - helm.git/blob - helm/software/matita/dist/TODO
628164c3951352f45fdda10263567040e2a93c70
[helm.git] / helm / software / matita / dist / TODO
1 TODO:
2 - "ncoercion" statement:
3   - type processing to identify source/target
4   - transitive closure (in the new Cic)
5   - generation of hints to implement the pullback
6 - principles generation:
7   - pretty printer for new statements required
8 - dependency graphs
9 - queries (on the trie?)
10 - serialization/undo
11   - objects
12   - ng_status (moo/lexicon)
13 - Tactics:
14   - satuation
15   - destruct
16 - Semantic selection:
17   - cosa usare per i pattern % ?
18
19 - Library.copy_at_level
20 - NCicRefiner.typeof e inferenza universi
21 - hints:
22   - compare with the paper
23
24 BUGS:
25
26 ---- 1) nwhd non fa nulla  ???    OK, testa rigida
27 ?2) cosa "corrisponde" alla simplify?   multivm/breakpoint
28     => la mu (+ iota) normalize
29 3) nelim bacata (assert ...), ma napply funziona
30    prod_lemmas/symmetric_eqquadruple, napply (Prod4T ...)
31 *4) nrewrite bacata, ma napply funziona
32 *5) variabili libere => errore di tipaggio
33
34 6) sintassi per i NG naturali (serve una ndefault? serve una notazione
35    standard sui numeri slegati dalla ndefault?)
36 7) se c'' variabili locale x1 e il costruttore x1, fa due passate
37 8) exadecim_lemmas, destruct: lento...
38
39 9) chiedere a Enrico il ninductive ascii_min che non va (ma cambiando il
40    nome o il numero degli elementi invece si') ????
41 10) enrivonment accetta nomi ripetuti
42 11) ngeneralize bug di unificazione:  ngeneralize in match (x1 = x2)
43 12) generazione dei nomi non va:
44     include "freescale/byte8.ma".
45     nlemma test: ∀b1,b2,b3.
46      plus_b8_d_d b1 (plus_b8_d_d b2 b3) = plus_b8_d_d (plus_b8_d_d b1 b2) b3.
47      #b1; #b2; #b3; ncases b1; ncases b2; ncases b3; 
48
49 Tattiche mancanti:
50  - ncut
51  - nclearbody
52  - nletin che prende il tipo
53
54 =============
55
56 A) ng_tactics/nCicElim, ultime linee: commentare le prerr_endline
57 B) cut a mano (o quasi):
58    ncut (x1 = x2) lo implementi come nletin Hcut ≝ (? : x1 = x2)