Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8618007
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 12, 20262026-06-12T06:00:33+00:00 2026-06-12T06:00:33+00:00

This question has a longish prelude before I can actually ask it :) Let’s

  • 0

This question has a longish prelude before I can actually ask it 🙂

Let’s say type A and B represent categories, then the function

f :: B -> A

is a morphism between the two categories. We can create a new category with A and B as objects and f as the arrow like this:

enter image description here

Now, let’s introduce a new category C and function g:

g :: C -> B -> A

I would like to be able to add C and g to my category above, but am unsure how to do it. Intuitively, I want something that looks like this:

enter image description here

But I’ve never seen anything like that in a category diagram before. To make this kosher, I could introduce a dummy arrow g’ and construct a 2-category like this:

enter image description here

But that seems like an obtuse picture. (We could, of course, use the picture I drew above as shorthand for the proper one.) Also, it’s not exactly clear anymore what g and g’ even are. g is no longer a function that takes as input a category C and returns a morphism :: B -> A. Instead,

g’ :: (C -> C)

g :: (C -> C) -> (B -> A)

If we pass g the identity, then everything will work fine. But if we pass it some other function, then who knows what could happen?

So my question is: Is an n-arrow within an n-category really the way we should think about functions with arity n? Or is there some easier way to represent this function down into a standard category that I missed?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-12T06:00:33+00:00Added an answer on June 12, 2026 at 6:00 am

    Talking about “morphisms between categories” here sounds like a possible category error (ha, ha). In Haskell we most often talk about an alleged category Hask, which is some inconsistently idealized(0) version of the category whose objects are types of kind * and morphisms are functions. It’s unclear what “functions” between categories would be here, if they’re not morphisms of Hask.

    On the other hand, in a more general setting you can certainly define a category whose objects are other categories(1), with whatever morphisms you want such that the necessary properties are satisfied. The usual example of this is Cat, the category of small categories whose morphisms are functors.

    That said, in either case the answer to your question is essentially the same. To talk about the collection of morphisms between two objects as if that collection was itself an object–i.e., as source or destination of other morphisms–you need an object to fill that role and some way to indirectly talk about morphisms so that you can translate back and forth.

    One way to do this, if we already have a way to talk about pairs of objects as a single object (usually called a “product” of some sort), is to define an equivalence between the collection of morphisms A⊗B→C and the collection of morphisms A→CB, which allows the object CB to stand in for the collection of morphisms B→C.

    If the “pairs of objects” in question are in fact a categorical product, we have a cartesian closed category, which both Hask and Cat are. In Haskell, the above equivalence are the functions curry and uncurry(2).

    That’s not the only way to talk about morphisms-as-objects, of course. The general concept is simply called a “closed category”. But if you’re thinking in terms of higher-order functions and functional programming, a cartesian closed category is probably what you have in mind.


    (0) This usually involves things like pretending ⊥ doesn’t exist (so that all functions are total) and treating functions that produce the same output as identical (e.g., ignoring differences in performance).

    (1) But don’t try to talk about a category whose objects are all categories, or else Bertrand Russell’s gonna give you the business.

    (2) Named after, of course, the logician Haskell Curry.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

This question has been striking me for many days... Let's say I have a
This question HAS had to be asked before, so it kills me to ask
This question has problably been asked before, but it seems like I can't phrase
This question has been asked before but i still don't understand it fully so
this question has probably been asked before, but i'm stuck and i've tried a
This question has been asked before, but I would like a little more detail
This question has been asked before and no definite answer has been given. I'm
This question has been asked before but with no real answer. I wan't to
This question has been asked before but I still cannot figure whats wrong for
This question has been asked in various forms on here before, but I cannot

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.