How to fit existing CT concepts into actual applications

Obstacles to Understanding

Bad Terminology

The names of the concepts are bad and clash with too many other concepts in other disciplines.

  • Category is a word that is used as many things in other disciplines.psychology,ML,linguistics,philosophy. A better word might be “structure-set” or “invariant elements” or something else.
  • Functor is a good word since it has no other meaning.
  • Natural transformation is a bad word since implies there is a “natural” concept the user should understand. Instead, it should be a super-functor or a functor-transform. The “natural” part is still not understood to me.

Categories of Actual Objects

  • When using applied categories, the categories themselves may be sets of actual things instead of the abstract set of mathematical structures. Clarity on whether the category under examination is a set of actual objects or abstract set of structures should be built into an applied framework.
  • Worked examples often use actual objects in demonstration which can confuse the issue of actual vs abstract categories.
  • Can CT actually applied to sets of actual objects? Or must it be limited to only abstract sets of structures?

Applied Value

Reaching the Yoneda Lemma

  • Actual value should be reach if one can apply the Yoneda lemma and find knowledge from the sets of relationships between objects.
  • Reaching that understanding by a laymen is blocked by the above obstacles
  • Creating a metric of similarity from the Yoneda relationships

Transforming Structures

  • Having a mathematical framework to transform between different discrete structures
    • Converting between different programming language syntax
    • Converting between different data structures
    • Converting between different RDF schema
  • Capturing what structure has been lost by a transform
  • Somehow create automatic algorithms that will transform a single data format to multiple other formats based on pairwise algorithmic transforms.
  • Language conversion example.
    • Have existing language transform algorithms
      • python rust
      • java python
      • c++ java
    • Adding a c++ code to system will generate equivalent java, python, and rust based on pairwise transforms.
    • Structure loss is recorded so we know what is missing in the final piece of Rust code.