TODO
author Cezary Kaliszyk <kaliszyk@in.tum.de>
Mon, 22 Mar 2010 17:21:27 +0100
changeset 1576 7b8f570b2450
parent 1573 b39108f42638
child 1649 ba837d3ed37f
permissions -rw-r--r--
Got rid of alpha_bn_rsp_cheat.

Automatically created functions:

  ty1_tyn.bn[simp]        lifted equations for bn funs
  ty1_tyn.fv[simp]        lifted equations for fv funs
  ty1_tyn.perm[simp]      lifted permutation equations
  ty1_tyn.distinct[simp]  lifted distincts
  ty1_tyn.eq_iff
  ty1_tyn.induct
  ty1_tyn.inducts
  instance ty1 and tyn :: fs
  ty1_tyn.supp            empty when for too many bindings

Smaller things:

- maybe <type>_perm whould be called permute_<type>.simps;
  that would conform with the terminology in Nominal2

- we also need to lift the size function for nominal
  datatypes

Bigger things:

- nested recursion, like types "trm list" in a constructor

- strong induction rules

- check support equations for more bindings per constructor

- automate the proofs that are currently proved with sorry:
  alpha_equivp

- store information about defined nominal datatypes, so that
  it can be used to define new types that depend on these

- make parser aware of bn functions that call other bn functions
  and reflect it in the datastructure passed to Fv/Alpha generation

- make parser aware of recursive and of different versions of abs

Less important:

- fv_rsp uses 'blast' to show goals of the type:
  a u b = c u d   ==>  a u x u b = c u x u d