Skip to content

effectively detect and handle alpha conversions #3

Closed

Description

@evinism

I don't attempt to do renaming at all when beta reducing, so naming collisions can sometimes happen. Not sure an exact test string to trigger this-- but it's something like replacing with something that has a free variable into somewhere where that variable is bound.

Activity

  1. changed the title [-]effectively detect and handle alpha conversion[/-] [+]effectively detect and handle alpha conversions[/+] on May 1, 2017
  2. evinism commented on May 1, 2017

    @evinism
    OwnerAuthor

    with the new parser this should be easier, because we can just create new subscripts.

  3. evinism commented on May 2, 2017

    @evinism
    OwnerAuthor

    one possible recreation: at normal form of (λa.λb.ab)b, b should still be a free variable, and the b within the lambda expression should be renamed. Currently, it's not.

    For an easier test, I realize: (λa.λb.a(a(b)))λa.λb.a(a(b)) should be church numeral 4.

  4. evinism commented on May 12, 2017

    @evinism
    OwnerAuthor

    this is much more important now that variable assignment works in some fashion

  5. evinism commented on May 18, 2017

    @evinism
    OwnerAuthor

    Kinda done with a placeholder ε₂ or whatever value. Doesn't look in the context to determine next available, just makes one it hasn't generated yet. Good enough for now.

  6. evinism commented on May 21, 2017

    @evinism
    OwnerAuthor

    Hopefully in the future, we'll get context aware renaming of variables.

  7. evinism commented on Jan 13, 2019

    @evinism
    OwnerAuthor

    This is finally finally done!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions