Short version: Let (C, ⊗, 1) be a locally presentable closed symmetric monoidal category with a zero object, and write 2 = 1 ∐ 1. Suppose the object 2 has a dual. Does it follow that C is a category with biproducts?
Longer version, with motivation: Let (C, ⊗, 1) be a locally presentable closed symmetric monoidal category. If you don't know what "locally presentable" means, you can replace these conditions with "complete and cocomplete symmetric monoidal category in which ⊗ commutes with colimits in each variable". Familiar examples include (Set, ×, •), (Set*, ∧, S0) (the category of pointed sets with the smash product), and (Ab, ⊗, ℤ). Any such category C has a unique "unit" functor FC : Set → C preserving colimits and the unit object: the set S is sent to the coproduct in C of S copies of 1. For a nonnegative integer n, let me also write n for the image under this functor of the n-element set. For instance, 0 represents the initial object of C.
A dual for an object X of C is another object X* together with maps 1 → X ⊗ X* and X* ⊗ X → 1 which satisfy the triangular identities; see wikipedia for more details. The data of X* together with these maps is unique up to unique isomorphism if it exists, so it makes sense to ask whether an object has a dual or not.
I'm interested in the relationship between which objects in the image of FC have duals and the existence of more familiar structures on C. In our examples,
- C = Set: Only 1 has a dual.
- C = Set*: Only 1 and 0 = • have duals.
- C = Ab: n has a dual for any nonnegative integer n.
It's easy to show that 1 is always its own dual, and slightly less trivially, that 0 has a dual iff 0 is also a final object, i.e., C has a zero object, or equivalently C is enriched in Set*. Moreover, if C is semiadditive, i.e., enriched in commutative monoids, or equivalently has biproducts, then n has a dual (in fact, n is its own dual) for every nonnegative integer n. Conversely, if 0 has a dual, so that C is pointed, and 2 also has a dual, then there is a canonical map 2 = 1 ∐ 1 → 1 × 1 = 2*. My question, then, is: is this map is always an isomorphism? Or, could it happen that 2* exists but is not isomorphic to 2 via this map?