Skip to content

Instantly share code, notes, and snippets.

@kenwebb
Last active May 31, 2017 17:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kenwebb/5aaaa9523a31ec38c29c3bde61150993 to your computer and use it in GitHub Desktop.
Save kenwebb/5aaaa9523a31ec38c29c3bde61150993 to your computer and use it in GitHub Desktop.
Category Theory for the Sciences - Chapter 3 - Fundamental Considerations in Set
<?xml version="1.0" encoding="UTF-8"?>
<!--Xholon Workbook http://www.primordion.com/Xholon/gwt/ MIT License, Copyright (C) Ken Webb, Wed May 31 2017 13:32:18 GMT-0400 (EDT)-->
<XholonWorkbook>
<Notes><![CDATA[
Xholon
------
Title: Category Theory for the Sciences - Chapter 3 - Fundamental Considerations in Set
Description:
Url: http://www.primordion.com/Xholon/gwt/
InternalName: 5aaaa9523a31ec38c29c3bde61150993
Keywords:
My Notes
--------
May 31, 2017
Exercises in Category Theory for the Sciences by David Spivak, Chapter 3, Fundamental Considerations in Set
]]></Notes>
<_-.XholonClass>
<PhysicalSystem/>
<Example/>
<!-- Example 3.1.1.2 playing cards -->
<Deck/>
<Card/>
<Suit/>
<Rank/>
<Suits/>
<Ranks/>
</_-.XholonClass>
<xholonClassDetails>
<!-- this needs to be an active object so it can have ports -->
<Card xhType="XhtypePureActiveObject"/>
</xholonClassDetails>
<PhysicalSystem>
<!-- Example 3.1.1.2 -->
<Example roleName="3.1.1.2">
<!-- X a projection of Deck -->
<Ranks>
<Rank roleName="A"/>
<Rank roleName="2"/>
<Rank roleName="3"/>
<Rank roleName="4"/>
<Rank roleName="5"/>
<Rank roleName="6"/>
<Rank roleName="7"/>
<Rank roleName="8"/>
<Rank roleName="9"/>
<Rank roleName="T"/>
<Rank roleName="J"/>
<Rank roleName="Q"/>
<Rank roleName="K"/>
</Ranks>
<!-- Y a projection of Deck -->
<Suits>
<Suit roleName="♣"/>
<Suit roleName="♦"/>
<Suit roleName="♥"/>
<Suit roleName="♠"/>
</Suits>
<!-- X × Y -->
<Deck>
<!-- clubs -->
<Card roleName="🃑"><port name="rank" connector="../../Ranks/Rank[@roleName='A']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃒"><port name="rank" connector="../../Ranks/Rank[@roleName='2']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃓"><port name="rank" connector="../../Ranks/Rank[@roleName='3']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃔"><port name="rank" connector="../../Ranks/Rank[@roleName='4']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃕"><port name="rank" connector="../../Ranks/Rank[@roleName='5']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃖"><port name="rank" connector="../../Ranks/Rank[@roleName='6']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃗"><port name="rank" connector="../../Ranks/Rank[@roleName='7']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃘"><port name="rank" connector="../../Ranks/Rank[@roleName='8']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃙"><port name="rank" connector="../../Ranks/Rank[@roleName='9']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃚"><port name="rank" connector="../../Ranks/Rank[@roleName='T']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃛"><port name="rank" connector="../../Ranks/Rank[@roleName='J']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃝"><port name="rank" connector="../../Ranks/Rank[@roleName='Q']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<Card roleName="🃞"><port name="rank" connector="../../Ranks/Rank[@roleName='K']"/><port name="suit" connector="../../Suits/Suit[@roleName='♣']"/></Card>
<!-- diamonds -->
<Card roleName="🃁"><port name="rank" connector="../../Ranks/Rank[@roleName='A']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃂"><port name="rank" connector="../../Ranks/Rank[@roleName='2']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃃"><port name="rank" connector="../../Ranks/Rank[@roleName='3']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃄"><port name="rank" connector="../../Ranks/Rank[@roleName='4']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃅"><port name="rank" connector="../../Ranks/Rank[@roleName='5']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃆"><port name="rank" connector="../../Ranks/Rank[@roleName='6']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃇"><port name="rank" connector="../../Ranks/Rank[@roleName='7']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃈"><port name="rank" connector="../../Ranks/Rank[@roleName='8']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃉"><port name="rank" connector="../../Ranks/Rank[@roleName='9']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃊"><port name="rank" connector="../../Ranks/Rank[@roleName='T']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃋"><port name="rank" connector="../../Ranks/Rank[@roleName='J']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃍"><port name="rank" connector="../../Ranks/Rank[@roleName='Q']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<Card roleName="🃎"><port name="rank" connector="../../Ranks/Rank[@roleName='K']"/><port name="suit" connector="../../Suits/Suit[@roleName='♦']"/></Card>
<!-- hearts -->
<Card roleName="🂱"><port name="rank" connector="../../Ranks/Rank[@roleName='A']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂲"><port name="rank" connector="../../Ranks/Rank[@roleName='2']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂳"><port name="rank" connector="../../Ranks/Rank[@roleName='3']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂴"><port name="rank" connector="../../Ranks/Rank[@roleName='4']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂵"><port name="rank" connector="../../Ranks/Rank[@roleName='5']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂶"><port name="rank" connector="../../Ranks/Rank[@roleName='6']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂷"><port name="rank" connector="../../Ranks/Rank[@roleName='7']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂸"><port name="rank" connector="../../Ranks/Rank[@roleName='8']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂹"><port name="rank" connector="../../Ranks/Rank[@roleName='9']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂺"><port name="rank" connector="../../Ranks/Rank[@roleName='T']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂻"><port name="rank" connector="../../Ranks/Rank[@roleName='J']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂽"><port name="rank" connector="../../Ranks/Rank[@roleName='Q']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<Card roleName="🂾"><port name="rank" connector="../../Ranks/Rank[@roleName='K']"/><port name="suit" connector="../../Suits/Suit[@roleName='♥']"/></Card>
<!-- spades -->
<Card roleName="🂡"><port name="rank" connector="../../Ranks/Rank[@roleName='A']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂢"><port name="rank" connector="../../Ranks/Rank[@roleName='2']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂣"><port name="rank" connector="../../Ranks/Rank[@roleName='3']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂤"><port name="rank" connector="../../Ranks/Rank[@roleName='4']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂥"><port name="rank" connector="../../Ranks/Rank[@roleName='5']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂦"><port name="rank" connector="../../Ranks/Rank[@roleName='6']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂧"><port name="rank" connector="../../Ranks/Rank[@roleName='7']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂨"><port name="rank" connector="../../Ranks/Rank[@roleName='8']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂩"><port name="rank" connector="../../Ranks/Rank[@roleName='9']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂪"><port name="rank" connector="../../Ranks/Rank[@roleName='T']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂫"><port name="rank" connector="../../Ranks/Rank[@roleName='J']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂭"><port name="rank" connector="../../Ranks/Rank[@roleName='Q']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
<Card roleName="🂮"><port name="rank" connector="../../Ranks/Rank[@roleName='K']"/><port name="suit" connector="../../Suits/Suit[@roleName='♠']"/></Card>
</Deck>
</Example>
</PhysicalSystem>
<Heightbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[
var myHeight, testing;
var beh = {
postConfigure: function() {
testing = Math.floor(Math.random() * 10);
myHeight = this.cnode.parent();
},
act: function() {
myHeight.println(this.toString());
},
toString: function() {
return "testing:" + testing;
}
}
]]></Heightbehavior>
<SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml,
]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient>
</XholonWorkbook>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment