• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
      • Apt
        • Simplify-defun
        • Isodata
          • Isodata-implementation
            • Isodata-event-generation
            • Isodata-fn
            • Isodata-input-processing
              • Isodata-symbol-isomap-alistp
              • Isodata-isomapp
                • Isodata-isomap
                • Make-isodata-isomap
                • Honsed-isodata-isomap
                  • Change-isodata-isomap
                  • Make-honsed-isodata-isomap
                  • Isodata-isomap->oldp-guard
                  • Isodata-isomap->oldp
                  • Isodata-isomap->newp-guard
                  • Isodata-isomap->newp
                  • Isodata-isomap->localp
                  • Isodata-isomap->isoname
                  • Isodata-isomap->hints
                  • Isodata-isomap->forth-of-back
                  • Isodata-isomap->forth-injective
                  • Isodata-isomap->forth-image
                  • Isodata-isomap->forth-guard
                  • Isodata-isomap->forth
                  • Isodata-isomap->back-of-forth
                  • Isodata-isomap->back-injective
                  • Isodata-isomap->back-image
                  • Isodata-isomap->back-guard
                  • Isodata-isomap->back
                • Isodata-pos-isomap-alistp
                • Isodata-process-iso
                • Isodata-process-inputs
                • Isodata-process-arg/res-list-iso
                • Isodata-process-isomaps
                • Isodata-fresh-defiso-thm-names
                • Isodata-process-arg/res-list
                • Isodata-process-arg/res-list-iso-list
                • Isodata-process-res
                • Isodata-fresh-defiso-name-with-*s-suffix
                • Isodata-process-newp-of-new-name
                • Isodata-process-isomaps-ress
                • Isodata-process-isomaps-args
                • Isodata-process-arg/res-list-iso-add-ress
                • Isodata-process-arg/res-list-iso-add-args
                • Isodata-process-old
                • Isodata-process-undefined
                • Isodata-process-arg/res-list-aux
                • Isodata-isomap-listp
                • Isodata-fresh-defiso-name-with-*s-suffix-aux
              • Isodata-macro-definition
          • Tailrec
          • Schemalg
          • Restrict
          • Expdata
          • Casesplit
          • Simplify-term
          • Simplify-defun-sk
          • Parteval
          • Solve
          • Wrap-output
          • Propagate-iso
          • Simplify
          • Finite-difference
          • Drop-irrelevant-params
          • Copy-function
          • Lift-iso
          • Rename-params
          • Utilities
          • Simplify-term-programmatic
          • Simplify-defun-sk-programmatic
          • Simplify-defun-programmatic
          • Simplify-defun+
          • Common-options
          • Common-concepts
        • Zfc
        • Acre
        • Milawa
        • Smtlink
        • Abnf
        • Vwsim
        • Isar
        • Wp-gen
        • Dimacs-reader
        • Pfcs
        • Legacy-defrstobj
        • Proof-checker-array
        • Soft
        • C
        • Farray
        • Rp-rewriter
        • Instant-runoff-voting
        • Imp-language
        • Sidekick
        • Leftist-trees
        • Java
        • Taspi
        • Bitcoin
        • Riscv
        • Des
        • Ethereum
        • X86isa
        • Sha-2
        • Yul
        • Zcash
        • Proof-checker-itp13
        • Regex
        • ACL2-programming-language
        • Json
        • Jfkr
        • Equational
        • Cryptography
        • Poseidon
        • Where-do-i-place-my-book
        • Axe
        • Bigmems
        • Builtins
        • Execloader
        • Aleo
        • Solidity
        • Paco
        • Concurrent-programs
        • Bls12-377-curves
      • Debugging
      • Std
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Isodata-isomapp

    Honsed-isodata-isomap

    Raw constructor for honsed isodata-isomapp structures.

    Syntax:

    (honsed-isodata-isomap isoname localp oldp newp forth back 
                           forth-image back-image back-of-forth 
                           forth-of-back forth-injective 
                           back-injective oldp-guard 
                           newp-guard forth-guard back-guard hints)

    This is identical to isodata-isomap, except that we hons the structure we are creating.

    Definition

    This is an ordinary honsing constructor introduced by std::defaggregate.

    Function: honsed-isodata-isomap

    (defun honsed-isodata-isomap
           (isoname localp oldp newp forth back
                    forth-image back-image back-of-forth
                    forth-of-back forth-injective
                    back-injective oldp-guard
                    newp-guard forth-guard back-guard hints)
     (declare (xargs :guard (and (symbolp isoname)
                                 (booleanp localp)
                                 (pseudo-termfnp oldp)
                                 (pseudo-termfnp newp)
                                 (pseudo-termfnp forth)
                                 (pseudo-termfnp back)
                                 (symbolp forth-image)
                                 (symbolp back-image)
                                 (symbolp back-of-forth)
                                 (symbolp forth-of-back)
                                 (symbolp forth-injective)
                                 (symbolp back-injective)
                                 (symbolp oldp-guard)
                                 (symbolp newp-guard)
                                 (symbolp forth-guard)
                                 (symbolp back-guard)
                                 (keyword-value-listp hints))))
     (mbe
      :logic (isodata-isomap isoname localp oldp newp forth back
                             forth-image back-image back-of-forth
                             forth-of-back forth-injective
                             back-injective oldp-guard
                             newp-guard forth-guard back-guard hints)
      :exec
      (hons
       (hons 'isoname isoname)
       (hons
        (hons 'localp localp)
        (hons
         (hons 'oldp oldp)
         (hons
          (hons 'newp newp)
          (hons
           (hons 'forth forth)
           (hons
            (hons 'back back)
            (hons
             (hons 'forth-image forth-image)
             (hons
              (hons 'back-image back-image)
              (hons
               (hons 'back-of-forth back-of-forth)
               (hons
                (hons 'forth-of-back forth-of-back)
                (hons
                 (hons 'forth-injective forth-injective)
                 (hons
                   (hons 'back-injective back-injective)
                   (hons (hons 'oldp-guard oldp-guard)
                         (hons (hons 'newp-guard newp-guard)
                               (hons (hons 'forth-guard forth-guard)
                                     (hons (hons 'back-guard back-guard)
                                           (hons (hons 'hints hints)
                                                 nil)))))))))))))))))))