030054 Introductory Math and Programming for Computational Philosophy (Yoo)

Event Timeslots (1)

This course, conducted in English, is complementary to "Agent-based Simulations in Philosophy" course (winter semester). In recent years, many philosophical developments have made use of heavy computer simulations and gigantic data sets. However, it is a big challenge for philosophy students to engage in such studies, especially for those who lack the required foundations, such as computer programming or probability theory. This course aims to equip students with these foundational tools in programming and math, thus empowering students to engage in contemporary philosophical literature. Thanks to the advances in modern technology and measurement techniques, scientists can carry out theoretical analyses that involve intense computations. Yet, these tools use large data sets and computer calculations and therefore come with the burden of mathematics and computer programming skills. Philosophers, too, have started to adopt methods relying on computers. For instance, epistemologists have started using computer simulation tools to examine knowledge in a social context where multiple agents interact with each other. The main points made in these works are accessible for a broader philosophical audience. But still, they require basic understanding of math and coding for a good comprehension, and furthermore replicating their arguments. This course aims to provide some of those basic requirements. Participants are not expected to have taken prior math courses. We plan to proceed step-by-step by starting with some seminal papers in the discipline of network epistemology. From then on, we go through matrix algebra, calculus, statistics, and graph theory. An introduction to Julia programming and practices will be included as we conclude each section. Evaluation (both graded and non-graded credits) is done by an exam focusing on key concepts: eigenvalues, differentiation, probability distribution, and centrality measures. Participants can earn extra exam points by submitting their Julia coding practices on these key concepts.