  A convex code is a binary code generated by the pattern of intersections of a
collection of open convex sets in some Euclidean space. Convex codes are
relevant to neuroscience as they arise from the activity of neurons that have
convex receptive fields. In this paper, we use algebraic methods to determine
if a code is convex. Specifically, we use the neural ideal of a code, which is
a generalization of the Stanley-Reisner ideal. Using the neural ideal together
with its standard generating set, the canonical form, we provide algebraic
signatures of certain families of codes that are non-convex. We connect these
signatures to the precise conditions on the arrangement of sets that prevent
the codes from being convex. Finally, we also provide algebraic signatures for
some families of codes that are convex, including the class of
intersection-complete codes. These results allow us to detect convexity and
non-convexity in a variety of situations, and point to some interesting open
questions.
