Anuj Kaul
email: anujkaul@soe.ucsc.edu

Li Xue
email: xueli@ucsc.edu

Katia Obraczka

Mateus A S Santos
email: mateus.santos@ericsson.com

Thierry Turletti
email: thierry.turletti@inria.fr

Handover and Load Balancing for Distributed Network Control: Applications in ITS Message Dissemination

Keywords: intelligent transport systems, software defined networking, distributed network control, next-generation vehicular network, handover

In this paper, we build upon our prior work on D2-ITS, a flexible and extensible framework to dynamically distribute network control to enable message dissemination in Intelligent Transport Systems (ITS), and extend it with handover and load balancing capabilities. More specifically, D2-ITS' new handover feature allows a controller to automatically "delegate" control of a vehicle to another controller as the vehicle moves. Control delegation can also be used as a way to balance load among controllers and ensure that required application quality of service is maintained. We showcase D2-ITS' handover and load-balancing features using the Mininet-Wifi network simulator/emulator. Our preliminary experiments show D2-ITS' ability to seamlessly handover control of vehicles as they move.

I. INTRODUCTION

According to the European Union's 2010/40/EU Directive [1], Intelligent Transport Systems (ITS) are defined as "systems in which information and communication technologies are applied in the field of road transport, including infrastructure, vehicles and users, and in traffic management and mobility management, as well as for interfaces with other modes of transport". As such, ITS is pushing the envelope and establishing next frontiers in a number of information and communication technology, including vehicular networks (VANETs) and vehicular communication. In the context of ITS applications, vehicles can exchange safety information, e.g., to assist drivers in avoiding accidents, to perform autonomous-or self-driving tasks, to coordinate traffic flow, communicate road conditions, etc. Furthermore, information flow can also support "infotainment" services, navigation, etc. [START_REF] Taleb | A stable routing protocol to support its services in vanet networks[END_REF]. For instance, the European Telecommunications Standards Institute (ETSI) defined multiple messages to support ITS services such as Road Hazard Warning [START_REF] Etsi | Intelligent transport systems; vehicular communications; basic set of applications; specifications of decentralized environmental notification basic service[END_REF].

In VANETs, there are two main types of communications, namely Vehicle-to-Vehicle (V2V) and Vehicle-to-Infrastructure (V2I). As vehicles get equipped with increasingly more computation-and storage capabilities as well as more complex sensors (e.g., cameras, radars, etc.), vehicular communication will require not only more resources from the underlying communication infrastructure, but also also more stringent quality-of-service guarantees (e.g., latency, bandwidth, etc). In order to support growing vehicular communication demands, new technologies such as Dedicated Short Range Communications (DSRC) [START_REF] Kenney | Dedicated short-range communications (dsrc) standards in the united states[END_REF], which enables V2V communication, have been proposed to ensure that stringent requirements (e.g., extremely low latency messages for autonomous driving) can be met. As such, VANETs will likely employ heterogeneous underlying technologies including multiple radio access technologies, such as IEEE 802.11, IEEE802.11p, and cellular technologies such as Long Term Evolution (LTE) and its enhancements towards fifth-generation (5G) networks.

As ITS applications become more diverse and demand more resources and as new communication technologies become available, VANET's network infrastructure is faced with considerable challenges, i.e., accommodate underlying heterogeneous communication technologies, while satisfying ever more demanding applications. Software Defined Networking (SDN) [START_REF] Kreutz | Software-defined networking: A comprehensive survey[END_REF], through control and data plane separation and centralized intelligence, is considered a key technology enabler to achieve flexible, programmable, and high-performing next-generation vehicular networks [START_REF] Zheng | Soft-defined heterogeneous vehicular network: architecture and challenges[END_REF], [START_REF] Salahuddin | Software-defined networking for rsu clouds in support of the internet of vehicles[END_REF]. Its application to VANETs has been proposed in recent years. However, logically centralized control function or static control distribution are not compatible with VANET's scalability, geographic distribution, administrative decentralization, and diverse qualityof-service requirements. In [START_REF] Kaul | Dynamically distributed network control for message dissemination in its[END_REF], we propose the Dynamic Distributed Network Control for ITS, or D2-ITS, a flexible and dynamically distributed network control framework, which aims at addressing the scalability, heterogeneity, delay intolerance, and decentralization requirements of ITS applications. To this end, D2-ITS' distributed control plane: (1) is decoupled from the data plane, and ( 2) is based on a control hierarchy that can dynamically adjust to current environment and network conditions in order to support ITS application requirements.

In this paper, we build upon our D2-ITS framework and extend it with handover and load balancing capabilities. More specifically, D2-ITS' new handover feature allows a controller to automatically "delegate" control of a vehicle to another controller as the vehicle moves. Control delegation can also be used as a way to balance load among controllers and ensure that required application quality of service is maintained. We showcase D2-ITS' handover and load-balancing features using the Mininet-Wifi network simulator/emulator [START_REF] Fontes | The user manual, mininet-wifi emulator for software-defined wireless networks[END_REF].

The remainder of the paper is organized as follows. Section II reviews the related works while Section III provides a brief description of the D2-ITS architecture and model. In Section IV, we discuss different types of handover and their trade offs, and in Section V present D2-ITS's handover and load balancing features, including their algorithms and implementation. Section VI describes our experimental methodology, experiments we conducted and their results. Finally, Section VII concludes and discusses directions for future work.

II. RELATED WORK

Controlling and managing network resources in VANETs is a challenging and complex task. Abundant literature is available on theoretical research (e.g., [START_REF] Zheng | Soft-defined heterogeneous vehicular network: architecture and challenges[END_REF], [START_REF] Salahuddin | Software-defined networking for rsu clouds in support of the internet of vehicles[END_REF], [START_REF] Sheet | Location information verification cum security using tbm in geocast routing[END_REF]).

There has also been several efforts that conduct experimental evaluation of new technologies to support VANETs. For example, the work in [START_REF] Fontes | From theory to experimental evaluation: Resource management in softwaredefined vehicular networks[END_REF] presents VANET emulation experiments in Mininet-WiFi [START_REF] Fontes | The user manual, mininet-wifi emulator for software-defined wireless networks[END_REF] to show the applicability and benefits of SDN to VANETs. They define a new implementation setup for the vehicle to enable more realistic experiments. The proposed setup consists of combining two Mininet-WiFi "objects", namely station and switch, which emulate enddevices and switches, respectively. It enables the use of heterogeneous wireless interfaces which can support V2V and V2I communication coupled with a software switch that can support programmable flow management by a centralized SDN controller. DeVANET [START_REF] Kazmi | Devanet: Decentralized software-defined vanet architecture[END_REF] proposes a decentralized SDNbased VANET architecture where each domain is controlled by a controller. However, DeVANET does not consider dynamic control distribution in response to application needs and current network and environment conditions. Another SDN-based centralized control approach for VANETs is presented in [START_REF] Thun | Performance improvement of vehicular ad hoc network environment by cooperation between sdn/openflow controller and ieee 802.11p[END_REF]. Experiments based on the OpenNet simulator using POX as the SDN controller compare performance against a traditional network control plane (i.e., not using SDN) in terms of packet delivery ratio, throughout, and packet delay.

Though not specifically applied to VANETs, the work presented in [START_REF] Kiran | Ap load balance based handover in software defined wifi systems[END_REF] describes a load balancing handover scheme performed by a centralized controller which selects APs clients should associate with as they move. The proposed handover mechanism is demonstrated using Mininet-Wifi experiments.

As previously pointed out, in [START_REF] Kaul | Dynamically distributed network control for message dissemination in its[END_REF], we propose D2-ITS, a novel dynamically distributed network control plane framework and show how it is able to support ITS' Road Hazard Warning (RHW) message dissemination application.

III. D2-ITS

As illustrated in Figure 1, D2-ITS' control plane is decoupled from the data plane (following the SDN model), however it can be distributed across multiple controllers according to a control hierarchy. In this particular example, controllers at the highest level of the D2-ITS hierarchy are located at cellular base stations (RBS), whereas second-level controllers are located at road-side units (RSUs). As shown in the figure, RSUs are controlling vehicles in Domains A and B, whereas Domain C vehicles are being controlled by the controller in one of the RBSs. These "local" controllers which are located closer to devices being controlled and their physical environment are able to react much faster to underlying dynamics besides maintaining topology knowledge through periodic updates from controlled devices.

A. Control Plane

Controller-to-controller communication happens through the east-west interface and is essential for control state synchronization, topology discovery and maintenance, controller-and vehicle authentication, etc. In the case of ITS' Road Hazard Warning (RHW) service, an event-based road message dissemination service specified by the European Telecommunications Standards Institute (ETSI), Cooperative Awareness Messages (CAMs), which may carry measurement reports, vehicle information (e.g., location, speed), and vehicle authentication information, are also part of the control plane1 . Figure 2 illustrates how CAM messages are processed by controllers.

The control plane also includes controller-to-switch communication which, in SDN terminology, is referred to as the southbound interface. Through the southbound interface, controllers send data forwarding rules to the data forwarding devices (i.e., vehicles in our ITS scenario) they control.

B. Data Plane

Decoupled from the control pane, D2-ITS' data plane focuses solely on forwarding data messages using "rules" installed in forwarding devices by the controller. In general, ITS applications will involve Vehicle-to-Vehicle (V2V) communication, Vehicle-to-Infrastructure (V2I) / Infrastructure-to-Vehicle (I2V) communication, Infrastructure-to-Infrastructure (I2I) communication, or a combination thereof.

• Vehicle-to-Vehicle Data Plane: Data can be forwarded between vehicles through V2V direct connection or through • Vehicle-to-Infrastructure (V2I) / Infrastructure-to-Vehicle (I2V) Data Plane: In ITS, the infrastructure itself may originate messages, e.g., to communicate road conditions, alerts, etc. ITS' Road Hazard Warning (RHW) service defines a variety of events including traffic jams, hazardous conditions and messages that will be generated to alert road users (e.g., cars, trucks) of such events For example, Decentralized Environmental Notification Messages (DENMs) [START_REF] Etsi | Intelligent transport systems; vehicular communications; basic set of applications; specifications of decentralized environmental notification basic service[END_REF] are mainly used to provide the necessary alerts in the case of emergency situations (e.g., eminent risk of collision) or warnings (e.g., road congestion conditions). As such, DENMs should be conveyed through the communication infrastructure and delivered to road users in the geographic area affected by the event, also called "relevance area" [START_REF] Etsi | Intelligent transport systems; vehicular communications; basic set of applications; specifications of decentralized environmental notification basic service[END_REF]. Figure 3 illustrates the processing of DENM messages by the controller.

IV. D2-ITS HANDOVER AND LOAD BALANCING

In [START_REF] Kaul | Dynamically distributed network control for message dissemination in its[END_REF], we demonstrated that by decoupling the controlfrom the data plane, D2-ITS leverages network programmability to address ITS scalability, delay intolerance and decentralization. In this work, we extend D2-ITS with handover and load balancing capabilities in order maintain continuous service availability and satisfy application quality-of-service requirements when subject to conditions such as unpredictable mobility patterns of fast moving vehicles, communication channel impairments, etc.

A. Handover

Communication networks that support user-or device mobility should be able to provide continuous service availability Fig. 3. D2-ITS controller's processing of DENM messages while users/devices are moving. In infrastructure-based networks, e.g. cellular networks or wireless LANs (WLANs), a handover (or handoff) refers to the process of transferring an ongoing call or data session from the current infrastructure device to which the mobile is associated (e.g., cellular base station, a WLAN access point, or AP) to another infrastructure device. Handovers can occur when the mobile device moves away from its current network point of attachment and thus out of its transmission range and gets closer to another. Handovers can also occur for load balancing, e.g., when an AP is nearor at capacity and decides to offload current or incoming associations to a nearby, less loaded AP. This usually improves call quality and user experience. In VANETs, vehicles may move at relatively high speeds (e.g., compared to pedestrians) and also have limited degrees of freedom due to the fact that they need to use roadways [START_REF] Harri | Mobility models for vehicular ad hoc networks: a survey and taxonomy[END_REF]. In D2-ITS, handovers happen when a controller delegates control of a vehicle to another controller due to vehicle mobility or in order to balance controller load.

In general, handovers can be classified according to different criteria. For example, depending on when they are initiated, handovers are either "hard" or "soft":

• Hard Handover: In this case, the association with the current controller is released either before or as the association with the new controller is established. As such, disruption in connectivity may occur which may result in data loss.

• Soft Handover: In soft handover, before breaking the previous connection to the old controller, a new connection to the new controller is established and active sessions are transfered to the new controller. Once the active sessions are transfered, the connection to the old controller is broken. Handovers can also be classified depending on who initiates them, as follows:

• In controller-initiated handovers, the controller decides to initiate the handover of some of its connected vehicles to another controller, either at the same hierarchical level (vertical delegation), or across hierarchical levels (horizontal delegation). For example, depending on its current load, a controller can decide to handover one or more vehicles that it currently controls (e.g., it can choose vehicles currently generating high traffic load) to a neighboring controller.

• In vehicle-initiated handovers, the vehicle itself decides to initiate the handover to a neighboring controller. For example, depending upon the signal strength or transmission errors, a vehicle may decide to associate itself to a neighboring controller with bettwr signal quality. However, for security purposes, controllers need to authenticate vehicles in order to authorize the handover.

B. Handover Steps

The handover process can be divided into 3 phases:

• Controller discovery: In D2-ITS, controllers broadcast beacon messages periodically. Beacons contain information about the controller, including IP address, port number, current load, etc. Once a vehicle receives a beacon from a controller, it calculates the corresponding Received Signal Strength Indicato (RSSI) value. Vehicles store this information in their local database and also propagate it to the controller to which it is connected.

The controller or the vehicle can use RRSI information to decide whether a handover should be initiated.

• Controller selection: Using the information in beacons, different criteria (e.g., RSSI value as discussed above) can be used to select the handover's target controller. Once the controller is selected, either the controller or the vehicle can initiate the handover.

• Association: In D2-ITS, once the target controller for the handover is selected, the vehicle proceeds with the association. Also, the current controller can send the current state it has about the vehicle to the next controller. This helps reduce or eliminate the authentication process of the vehicle by the target controller.

V. D2-ITS HANDOVER DESIGN AND IMPLEMENTATION

Figure 4 shows a simple handover scenario with two RSU controllers, each of which controlling a vehicle. The figure 5, the D2-ITS controller builds upon an SDN controller and uses a local database to store state information (information about currently controlled nodes, neighboring controllers, etc), as as a handover initiator, which is described in more detail in Section V-C below. The vehicle itself runs a software switch, a local database, and, in order to handle handovers, also includes a beacon consumer and handover intiator, which are also described in Section V-C.

A. Controller-Initiated Handover

Figure 5 illustrates the workflow of controller-initiated handover as well as D2-ITS' software components present in the controller and vehicle. In this particular scenario, RSU A is controlling a vehicle which is about to be handed over to RSU B. The sequence of steps illustrated in Figure 5

C. Handover Extensions to D2-ITS

To achieve seamless handover in D2-ITS, we included the following extensions to D2-ITS's original design (as described in [START_REF] Kaul | Dynamically distributed network control for message dissemination in its[END_REF]):

• Beacons: For the purpose of controller discovery by vehicles, controllers periodically send beacon messages which are heard by vehicles in the proximity of the controller. Note that, while some protocols like IEEE 802.11 already generate periodic beacon messages, others such as LTE do not.

• Vehicle database: To store information related to neighboring controllers, we use a database in the vehicle where we keep the following information about known controllers:

-RSSI value; -Controller IP address; -Controller port number; -Time when last beacon was received.

• Beacon-consumer application: Beacon consumer application would co-locate with OVS inside the vehicle. The functionality of the beacon consumer application is to consume the beacon messages from neighboring controllers and to update the table described above.

• Handover-initiator application: There would be two different handover-initiator applications:

-Handover-initiator application at vehicle: This application would reside in the vehicle and would listen to the updates on the ovsdb table. Specific sets of criteria to initiate the handover are configured in this application. When those criteria are met, it will initiate the handover. -Handover-initiator application at controller: This application would reside in the controller and would listen to the updates on the ovsdb table remotely. Similar to the Handover-initiator application at vehicle, specific configurable handover criteria are set in this application and, when they are met, handover is triggered.

VI. EXPERIMENTAL EVALUATION

The goal of this simulation is to investigate and compare handover latency and packet loss of D2-ITS and centralized ITS architecture. In order to do so, we need set up vehicle-infrastructure-vehicle end-to-end communication, then we could time stamp at the moment sending the message and receiving the message to obtain message transmission latency due to handover and also count the packet loss for performance. From one step begins, we implement following three basic functions: inter-controller negotiation, vehicle to controller communication and handover while vehicles moving. More work are needed in the future.

A. D2-ITS Handover Prototype

As the basis for our implementation, we use the Pox [START_REF]Pox controller[END_REF] open-source controller and the OVS software switch [START_REF] Pfaff | The design and implementation of open vSwitch[END_REF].

We used Mininet-WiFi2 as our experimental platform. More specifically, we ran our experiments with Mininet-WiFi version 2.2.1d1 running on Ubuntu version 16.4 in VirtualBox 5.2.6. Mininet-WiFi [START_REF] Fontes | Mininet-wifi: Emulating software-defined wireless networks[END_REF], [START_REF] Fontes | The user manual, mininet-wifi emulator for software-defined wireless networks[END_REF] is a network emulator which can emulate different types of wireless nodes, such as access points, eNodeBs, and wireless links. It also supports node mobility and provides visualization capabilities.

B. Experiments and Results

The main goal of our experiments is to demonstrate D2-ITS' support for handover and load balancing in a seamless fashion. In particular, we use ITS Road Hazard Warning (RHW) message dissemination application to show that D2-ITS does not incur significant additional latency nor causes service disruptions.

Our experiments demonstrated the following D2-ITS functionality: The implementation takes advantage of the POX framework, leveraging some of its components and adding the missing functionalities. The functions used for the East-West Interface are categorized as follows.

• Messenger Module: A POX module providing a message queue (MessageNexus). Messages are sent to the channels and are formatted in JSON. It is possible to define channels, send and receive messages, and be notified when a connection is established. The messenger.tcp transport module allows the message queue to open a TCP socket to listen for messages coming from outside the controller.

A thread binds a socket to a port and listens for new connections. A new thread is spawned for each connection to • East West Messenger Module: A Python module implementing the communication for the East-West Interface and the vehicles. It uses event handlers to trigger actions when a new controller or the user client running on the cars connect, when a message is received or when a message needs to be sent. The communication between controllers, East-West Interface, uses a handshake kind protocol where the controllers can exchange point to point or broadcast messages. The communication between a vehicle and its current controller, uses a channel to send messages, CarLink, and a channel to poll for messages for the vehicle, CarLinkRelay. The communication is initiated by the vehicle that this way can be used for vehicles to send messages, more details are described in the following subsection.

• Link Client Module: An independent script used to interact with the controllers. It uses a TCP socket to open a connection to the messenger running in POX (IP address and port are known) and then provides a CLI to send messages and display the ones received. Messages are in JSON, they include the channel name, and the actual message. The messenger module and east west messenger module are defined in mymessenger.py, which needs to be put in the ext/ directory of POX controller in order to initialize the connection. Moreover, the controller to controller communication happens with a controller invoking the test client program to send a message to another controller at any time. The communication between controllers uses a specific channel.The messenger function can be initiated through following command:

• mininet-wifi/$ cd pox • mininet-wifi/pox/$ ./pox.py --verbose openflow.of 01 ---port=6644 --address=127.0.0.1 messenger messenger.tcp transport --tcp port=6254 mymessenger Figure 8 shows how to start the client module, running on another terminal in the virtual machine. In the future the model of a vehicle will trigger this client controller. For example, a vehicle sending an emergence message will trigger the controller to communicate with the neighbor controller. Here is the command to start the POX client controller with the test client.py. In vehicle to controller communication, as first step, a vehicle need to automatically discovery and authenticate with RSU during its moving without a need for manual configurations. For example, while the vehicle roaming to a new location, the vehicle could reactively or proactively discovery the RSU in the domain through active scan or bgscan. As mentioned before, controller is co-located with RSU, thus controller will be selected in case of RSU is selected. When a vehicle have selected and successfully associate with the current domain RSU, RSU send the co-located controller's information(i.g.,IP address, MAC address) embedded in the beacon frames to the vehicle for deciding the controller handover. We assume if the vehicle is in the range of more than one RSUs, it can select the RSU and its controller by strongest signal, defined in RSSI parameter. We experienced significant issues in getting Mininet-WiFi to activate the POX controller through script. At the end we decided to work-around the issues through the following extensions: we extended the POX controller to receive messages coming from vehicles through a socket interface. An external program (car client) is designed for stateless communication between vehicles and controllers, which is invocable from Mininet-WiFi. Car client takes some arguments, including a message to send, the vehicle name, and the IP address and port number of the controller to which to send the message. In order to send a message to the associated controller, the program opens a socket with the specified controller, sends the message and closes the socket(stateless communication). The program can also poll the controller to check if there are messages from the controller to the vehicle waiting to be delivered. Additionally, there are following functions in east-west messenger module defined to support vehicle to controller communication. The communication between a vehicle and its current controller, uses a channel(CarLink) to send messages, and a different channel(CarLinkReplay) to poll for messages for the vehicle. The communication is designed to be initiated by the vehicle that this way can be more realistic. The following functions to are invoked:

• Initialization: It defines and starts the functions to enable communication between the controller and vehicles.

• Car Link Relay(CarLinkRelay, CarLinkRelayBot): This function keeps track of the connections sending messages For each connection on the channel, it keeps a message counter, listens to messages and triggers actions and replies(ACKs). In addition, this function sends messages when triggered by controller events.

• Car Client Module: An independent python script used by a vehicle to interacts with the controller. It is stateless and uses a TCP socket to open a connection to the messenger running in POX (IP address and port are known). It provides its ID, the car name, can send a message and/or request messages queued for it. Messages are in JSON, include the ID, car name, the channel name, carlink or calink request, and the eventual message, such as emergence. The steps to simulate vehicle to controller communication are shown in Figure 9 as follows: We run multiple remote POX controllers, each in its own Xterm. Due to all the POX controllers running inside the same virtual machine, each controller is identified by a different port number. Inside the Mininet-WiFi car definition, we invoke the car client program whenever a message has to be sent to a controller, specifying the controller associated with the RSU the vehicle is currently associated with. Periodically the vehicle invoking the car client program queries the controller co-located with the RSU that the vehicle is currently associated with to check if there are messages waiting to be delivered. We believe that a stateless communication approach is more appropriate than keeping up persistent TCP connections in a mobility environment where associations of car to RSU / controller is dynamic and continuously changing.

D. Handover

We consider two scenarios to observe the handover:

• There are two RSUs (RSU1 and RSU2) deployed which have very small signal overlap area, while 3 cars deployed, shown in Figure 10.

• There are three RSUs (RSU1 and RSU2 and RSU3) deployed which have large signal overlap area, while 3 cars deployed, shown in Figure 11. The handover implementation has 4 stages: scanning, RSU selection, RSU association, Controller association, alternatively, data packet detour. At this stage, we simulate the handover through Mininet-WiFi ssf (Strong Signal First) association based on RSSI value. We configure the environment as follows: enables the wmediumd, uses UserAP module for RSU rather than OVSKernel AP, enable bgscan mechanism. In order to enable the controller association while the moving vehicle achieving association with RSU, we set the controller as a parameter for RSU. Thus, when a vehicle association with specific RSU, the vehicle also will obtain the information of the controller. This information should be invoked inside the wireless packet. In this experiment, we directly configure the controller address in the vehicle node to mimic this behavior. After association, the vehicle can communication with the controller based on mechanism descried aforementioned. Figure 12 shows the behavior of the activity of association while vehicles reset the new position.

VII. CONCLUSION AND FUTURE WORK

In this paper, we built upon our prior work on D2-ITS, a flexible and extensible distributed network control framework that addresses stringent requirements of emerging and future applications, such as Intelligent Transportation Services (ITS), and extend it with handover and load balancing capabilities. D2-ITS' new handover feature allows a controller to automatically "delegate" control of a vehicle to another controller under certain conditios, e.g., as the vehicle moves. Control delegation can also be used as a way to balance load among controllers and ensure that required application quality of service is maintained. We showcase D2-ITS' handover and load-balancing features using the Mininet-Wifi network simulator/emulator [START_REF] Fontes | The user manual, mininet-wifi emulator for software-defined wireless networks[END_REF]. As part of our future work, we plan to demonstrate D2-ITS' handover and load balancing features in a wide-range of realistic scenarios and considering other handover criteria such as controller load, application latency and bandwidth requirements, etc.

Fig. 1 .

 1 Fig. 1. D2-ITS Architecture.

Fig. 2 .

 2 Fig. 2. D2-ITS controller's processing of CAM messages

Fig. 4 .

 4 Fig. 4. RHW communication using gateways

Fig. 5 .

 5 Fig. 5. Handover initiated by controller

Fig. 7 .

 7 Fig. 7. Starting the Messenger Module

Fig. 8 .

 8 Fig. 8. Starting the Client Module

Fig. 9 .

 9 Fig. 9. Vehicle to Controller Communication

Fig. 10 .Fig. 11 .

 1011 Fig. 10. Handover Scenario 1

Fig. 12 .

 12 Fig. 12. Handover Observation

  and initiates the handover request to the vehicle. The controller also fetches the vehicle's state information from its local database and sends it to the new controller, in this caseo, RSU B. 6 Upon receiving the handover request from its controller, the switch inside the vehicle starts to initiate link establishment (or association) with the new controller (RSU B).

	B. Vehicle-Initiated Handover
	Figure 6 illustrates the vehicle-initiated handover workflow.
	1-4 : Similar to controller-initiated handover as explained
	above.
	5 When the handover criteria of Handover application
	within vehicle are met, switch within the vehicle sends
	the request to initiate handover to the controller.
	6 After controller A validates the handover request, it
	sends approve handover request.Controller also fetches
	the vehicle information from its local database and sends
	vehicle state information to the new controller of RSU B.
	This is again similar to the controller initiated handover
	scenario.
	7 After the switch inside the vehicle receives approve
	handover request from controller, switch starts to initiate
	link establishment.
	is as follows:
	1 RSU A's controller periodically broadcasts beacon mes-
	sages.
	2 Upon receiving beacon messages from the controller, the
	vehicle's software switch forwards them to the vehicle's
	beacon consumer application.
	3 The beacon consumer processes the beacon and updates
	this information in the vehicle's local database.

[START_REF] Kenney | Dedicated short-range communications (dsrc) standards in the united states[END_REF]

These updates generate an update notification to the vehicle's and the controller's (in this case the controller in RSU A) handover initiator. 5 When the handover criteria of RSU A's handover initiator are met, the controller selects the target controller for the handover

More information on ETSI Intelligent Transport Systems standards is available at http://www.etsi.org/technologies-clusters/technologies/intelligenttransport.

https://github.com/intrig-unicamp/mininet-wifi

ACKNOWLEDGMENTS

This work is part of the DrIVE Associated Team between Inria, Unicamp, Ericsson Research and UCSC. It has been partially funded by Inria's Associated Team Program, the French ANR Investments for the Future Program under grant ANR-11-LABX-0031-01, and the US National Science Foundation under project CNS 1321151.


Alexander Schüler-Meyer
email: alexander.schueler-meyer@math.tu-dortmund.de

Defining as discursive practice in transition -Upper secondary students reinvent the formal definition of convergent sequences

Keywords: transition, limits, convergence, practice of defining, design research

The investigation of limits is at the heart of analysis at university. Accordingly, it is a worthwhile topic for transition courses. The present study engages upper secondary students in reinventing the definition of convergent sequences. Using a commognitive framework, the central development stages of the definition from experiential to abstract are empirically investigated in terms of activated secondary school discourses. The students' familiarity with secondary school discourses is critical, as it allows them to transition from grasping processes with metaphors towards grasping them as formal and abstract objects. For this, school objects act as intermediate steps. Further studies of transition courses should explicitly address the role of students' secondary notions as resources for reifying processes into abstract objects.

INTRODUCTION

The investigation of limits is at the heart of analysis on the university level [START_REF] Cornu | Limits[END_REF]. Accordingly, limits are a worthwhile object of investigation in a transition course. In the German context, students also have previous knowledge about limits in the domain of derivatives from upper secondary school. At school, the students' notions are usually not developed into a formal understanding of limits, as it is not expected in the German curriculum. Students transitioning to university have to develop their formal notion of limits in the regular lecture, which can be difficult. Thus, transition courses located at school have a huge potential for supporting students in developing a more compatible formal and abstract understanding of limits.

Objects in school have an experiential basis, while objects in tertiary mathematics "are specified by formal definitions and their properties reconstructed through logical deductions" (de Guzmán, Hodgson, Robert, & Villani, 1998, p. 753). For different reasons, students in transition often do not use definitions as starting points for their reasoning about objects, as would be expected in tertiary mathematics [START_REF] Edwards | The role of mathematical definitions in mathematics and in undergraduate mathematics courses[END_REF][START_REF] Vinner | The role of definitions in the teaching and learning of mathematics[END_REF]. Engaging students in activities of defining objects on a trajectory from experiential to formal approaches might help alleviate these issues.

In this paper, five students in a transition course from secondary to tertiary education in Germany are asked to create a definition of convergent sequences, after having studied them with the model of epsilon strips the week before. The paper illustrates how students' progress from their experiential understanding of convergence towards a formal definition based on deductions. The qualitative analysis also unfolds how the students use their previous school knowledge for this.

DEFINING AS A MATHEMATICAL PRACTICE IN TRANSITION

Students' intuitions about limits

The transition from secondary to tertiary mathematics has been extensively addressed in terms of changes and obstacles [START_REF] Thomas | Key Mathematical Concepts in the Transition from Secondary School to University[END_REF]. A specific issue of transition in regard to the understanding of limits are the students' intuitions (for typical metaphors [START_REF] Oehrtmann | Collapsing Dimensions, Physical Limitation,and Other Student Metaphors for Limit Concepts[END_REF]. The students' intuitions about limits are not surprising: Historically, mathematicians used their intuitions to think about infinity based on infinitesimals, and this kind of reasoning still permeates modern analysis despite not being accepted as adequate [START_REF] Cornu | Limits[END_REF]. Students' intuitions are a fruitful starting point for reasoning about limits. Activities of using an epsilon-strip help students to understand the convergence of sequence in terms of neighborhoods, in which are "almost all terms of the sequence" (Przenioslo, 2005, p. 88). They can also help students to understand the logical relations of  and N [START_REF] Roh | An empirical study of students' understanding of a logical structure in the definition of limit via the ε-strip activity[END_REF].

Another issue is the role of pre-formal notions about limits. In upper secondary classrooms in Germany, pre-formal notions of limit are encouraged by teachers and textbooks, as for example n is commonly referred to as "tends to". By using and extending metaphors of "how many terms make a party" (p. 335) into "an infinite amount of terms will be in that epsilon neighborhood and a finite amount of terms will be outside", this understanding can be developed into a formal understanding of convergence [START_REF] Dawkins | Metaphor as a possible pathway to more formal understanding of the definition of sequence convergence[END_REF]. It has been illustrated that students can reinvent the formal definition [START_REF] Swinyard | Reinventing the formal definition of limit: The case of Amy and Mike[END_REF], but not how students' intuitions and previous knowledge from secondary schools can systematically be activated in this process. Hence, carefully guided activities of investigating sequences with epsilon strips might help students make experiences that connect to their intuitions, but might at the same time be rich enough for students to develop a formal and abstract understanding of limits. While the first aspect has been investigated (see above), the latter aspect of transitioning to the formal and abstract while connecting to previous knowledge and intuitions has not yet been investigated.

The practice of defining

Definitions are the central means for grasping objects on the tertiary level, and the starting point for mathematical reasoning about these objects [START_REF] Vinner | The role of definitions in the teaching and learning of mathematics[END_REF][START_REF] Alcock | Definitions: Dealing with categories mathematically[END_REF]. However, in nearly all mathematical domains, students in transition often rely on their informal understanding of objects, instead of definitions (overview in [START_REF] Thomas | Key Mathematical Concepts in the Transition from Secondary School to University[END_REF]. There are several reasons why students have difficulties with defining and definitions. Definitions describe objects in arbitrary ways [START_REF] Vinner | The role of definitions in the teaching and learning of mathematics[END_REF], i.e. students do not have an experiential basis with the defined objects. Furthermore, students are usually not engaged in practices of defining. Instead, students encounter definitions in processes of proofing or validating [START_REF] Swinyard | Coming to understand the formal definition of Limit: Insights gained from engaging students in reinvention[END_REF]. When students can encounter definitions as product of their own making, it might help them to become aware of the nature of definitions at the university level [START_REF] Swinyard | Reinventing the formal definition of limit: The case of Amy and Mike[END_REF].

In sum, students can and should be engaged in practices of defining limits. From a transitionary standpoint, practices of defining should be rooted in familiar secondary activities with empirical investigations to create an experiential basis [START_REF] De Guzmán | Difficulties in the passage from secondary to tertiary education[END_REF]. Then, practices of defining in a transition course should start with an experiential basis, and let students reinvent an own 'arbitrary' but viable definition, and later progress to a more formal and abstract definition.

THEORETICAL BASIS: COMMOGNITION AND GUIDED REINVENTION

Commognitive Perspective on Learning and tertiary mathematics

Within the framework of commognition, students' participation in discourses is investigated in terms of changes in the ways students discursively realize mathematical objects in their utterances, where such changes constitute learning [START_REF] Sfard | Thinking as communicating: Human development, the growth of discourses, and mathematizing[END_REF].

Mathematical discourses can be distinguished from each other by their use of keywords (e.g. "tends to"), of visual mediators (e.g. graphs and symbols), of practices ("routines", patterned activities like defining or proving) and of narratives (like definitions) (Sfard, 2008, p. 134). Of special interest in the present study is the students' use of visual mediators and of narratives. Visual mediators are central means for grasping convergent sequences with epsilon strips and with mathematical symbols. Narratives are the means for students to discursively realize relations between objects, or between the facets of the object convergent sequence, like  or N.

The development of a definition (as a narrative) and its associated mathematical can be characterized through the ways it is discursively realized over time. This development of the definition can be visualized as a "realization tree". The branches of the realization tree represent the distinct ways in which a definition, in this case about the object convergent sequence, is discursively realized by the students (Sfard, 2008, p. 153), up to a certain point in time in the discourse.

Research program of design research and framework of guided reinvention

The present study follows a guided reinvention approach based on realistic mathematics education. It engages students in context problems in which a mathematical object is the result of own experiences and activities [START_REF] Gravemeijer | Context problems in realistic mathematics education: A calculus course as an example[END_REF]. This is a fruitful approach for introducing tertiary mathematical objects (e.g. [START_REF] Dawkins | Metaphor as a possible pathway to more formal understanding of the definition of sequence convergence[END_REF]and many others). It is located in the research program of design research [START_REF] Prediger | Design research with a focus on learning processes: an overview on achievements and challenges[END_REF].

The underlying hypothetical learning trajectory builds on the research on the learning of limits. Building on the epsilon-strip activity in the previous session, students are asked to document all facets which are relevant for convergence, for example the height of the strip. Afterwards, the students have to bring these previously found facets into a logical relationship in the form of a narrative. At the same time, the students have to formalize the activity, including the process of finding a limit candidate. A critical step in this trajectory is the need to progress from an x-first perspective, in which students focus on inputs (x-values) and their respective outputs (y-values), to a y-first perspective. The x-first perspective emphasizes finding a candidate for a limit [START_REF] Swinyard | Coming to understand the formal definition of Limit: Insights gained from engaging students in reinvention[END_REF]. In regard to continuity, the y-first perspective and finding a limit candidate is implied in the epsilon-strip activity, as students first choose a strip with a certain height and afterwards arrange it on the sequence. Nevertheless, previous experiences with functions might still guide students to consider an x-first-perspective, so that the y-first perspective needs to be stabilized.

Research questions

In the present study, the students' progression from their experiential notion of convergence with epsilon-strips towards a more the formal, abstract notion of convergence along the outlined trajectory is investigated. The students are engaged in practices of defining, in line with the previous considerations. This encompasses, among others, the following activities: 1. Identifying central elements that should constitute a definition, and baptizing them, and 2. exploring or deducing relations of these elements. Of special interest are the students' ways of building on and connecting with their previous secondary school discourses. The study focuses on the emergent practice of defining, as students' preceding exploration of sequences with epsilon strips has already been studied in other studies [START_REF] Przenioslo | Introducing the Concept of Convergence of a Sequence in Secondary School[END_REF].

The following research questions will be investigated in the present study: Q1. What are the crucial steps in the students' learning trajectory from experiential investigations towards a formal definition of convergence? Q2. How do students activate their previous knowledge from school, and what role does this knowledge play to proceed to a formal, abstract definition?

METHODOLOGY

Participants and implementation

The design research project encompasses three design experiment cycles, the data analyzed in this paper stem from the third cycle in which five students participated (Ludwig, Lawrence, Dominic, Leif and Tanja). These students are highly proficient eleventh-graders, in their penultimate year of upper secondary education. They participate voluntarily in a one-year long transition course, designed by the author for preparing for university STEM-studies. From their regular mathematics classrooms, the students are familiar with an informal understanding of continuity ("Drawing without lifting the pen") and with limits as "tends to". The teaching unit comprised 5 sessions of 90 minutes each, three sessions on convergent sequences, two sessions on continuity. The teaching unit was taught by a Master student with tutoring experiences at university level. All sessions were videotaped and transcribed.

The analysis focuses on Task 2 of Session 2, in which the students attempt to find a formal definition for convergence by drawing upon their activities with the epsilon-strips (Session 1). Before Task 2, the students recapitulated the activity of using the epsilon-strips with a given convergent sequence. Furthermore, the students have generated a 'knowledge storage' in the first session, where they documented the relevant mathematical facets of convergence, and visualized them. Session 2 finishes with the completion of the here investigated task.

Analysis of data

The transcripts of Task 2 in Session 2 were analyzed qualitatively in the framework of commognition [START_REF] Sfard | Thinking as communicating: Human development, the growth of discourses, and mathematizing[END_REF]. The central steps of the analysis are:

To answer Q1, the collective ways to realize the object convergent sequences over time are analyzed and depicted in form of a realization tree. For that, the transcript is segmented according to the qualitatively different ways in which the students realized the object convergent sequence. As illustrated, changes in the ways of realizing objects with keywords, visual mediators and their relations with narratives in the discourse are indicative of learning. Each branch in the tree hence represents one distinct way of grasping convergence discursively. The progression from one branch of the realization tree to the next one marks a crucial step in students' learning trajectory, as the students change the discourse about convergence in some substantial regard.

To answer Q2, the transcript is analyzed in regard to episodes in which the students' discourse builds on school objects, which is indicated by keywords like "function", "y-value", and narratives, e.g. the metaphor of "tends to". These episodes are analyzed in terms of how the students proceed from secondary utterances about school objects towards more tertiary abstract and formal utterances. An object becomes abstract, when its narratives do not refer to empirical phenomena, but to other (previous) mathematical narratives. An object is considered formal, if it is typically realized with a symbol as visual mediator [START_REF] Sfard | Thinking as communicating: Human development, the growth of discourses, and mathematizing[END_REF].

RESULTS

Different Realizations of convergent sequences and their progression

After having investigated a convergent sequence for 20 min, the students engage in finding a definition for convergent sequences in Task 2 for the remainder of Session 2. For that, they can build on their "knowledge storage", in which they documented the central facets of convergence together with their respective graphical representations. The realization tree in Figure 1 illustrates how students progressively realize convergent sequences, from left to right, and achieve an abstract, formal definition (fourth branch). The small rectangles denote the predominant discursive means used. The turn numbers "Tx" under each oval localize the realization branches in the classroom conversation. The conversation lasts 393 Turns.

In regard to the question of proceeding from an experiential notion of convergence towards an abstract definition (Q1), this realization tree reveals several interesting features of the developing practice of defining in transition. At two points in the pro-cess students specifically go back to the experiential basis of working with the epsilon strip, in the first and third branch of the realization tree. In these instances, the students rely on metaphors to make sense of their experiences. In interaction with the teacher, who explicitly states the rule to not use the metaphor "tends to" after #237, the students adopt the phrase "it exists" from the teacher to form a new narrative about A in terms of functional relationships, leading to the notion of A(m)/ N  .

In the second and fourth branch of the tree, the students activate their previous school knowledge in order to grasp their experiences in a more formal and objectified way. This will be investigated in more detail in the next section.

Activation of secondary discourses

The starting point for the students to define convergence are narratives about limits grounded in "tends to", resulting in a narrative about two interconnected limit processes: "m tends to 0 if A tends to infinity. And we need a target value" (#171-172). In this first branch of the realization tree (Fig. 1), the students rely heavily on the familiar school narratives of "tends to". Now, the teacher establishes the discursive rule that the students should avoid using "tends to" (#213-230). The students attempt to follow this rule, which leads to a change in the discourse (second branch in Fig. 1). The following conversation occurs right in the beginning of these attempts: In this episode, Lawrence summarizes the result of the previous discussions in terms of "tends to". Leif proposes to think about the relations in terms of proportionality, and Ludwig and Lawrence pick this up in terms of functional relations.

The students can give up narratives with "tends to" by first replacing the "if…then" relationship with a functional relationship, as indicated by keywords of 'dependence'. These keywords show that the students' ideas are rooted in familiar secondary discourses about functional relationships. It seems that these secondary notions are brought into the discourse associatively. Accordingly, the viability of these notions is up to debate, and competing narratives are uttered (#240, 241). This guides Leif to specify his proposal into "m is proportional to 1/A". In this episode, school notions allow the students to collaboratively develop new narratives. They help students to engage in a new discourse in which the discursive rules have changed.

In the following third episode, the students try to decide about the nature of the hypothesized functional relationship. While the students still document their ideas in terms of the narrative of "tends to" (#282), the teacher engages them in thinking again about the functional relationship.

Ludwig treats sequences in terms of properties of functions, namely in terms of yand x-values (#287). Based on this, he concludes that, as with functions, m has to be dependent from A, taking a x-first perspective. Lawrence goes back to activities of using the epsilon strips, and how to choose a strip (#288), proposing an y-first perspective as implied by the epsilon strip activity. Hence, Ludwig treats sequences as a variation of the familiar secondary objects of functions, but his functional perspective is contested by Lawrence, who enforces his narratives about the epsilon strips and their height and placement (#288, 290). In the end, both narratives are merged as "A is dependent from m" (#293, 294), resulting in an endorsed narrative about A(m).

Here, the students' previous school knowledge about functions and functional relationships is the link between the students' experiences with epsilon strips and the formal notion of A(m) as an object. It provides the narrative that A and m can be brought together as a combined object A(m) under a y-first perspective, and the visual mediator/symbol of A(m). However, as Ludwig's utterance illustrates, treating sequences as functions is at the same time misleading, as it reinforces an x-first perspective. Above that, there is still an echo of the metaphor "tends to" in A(m), as the students use this narrative to summarize their ideas about the functional relationships (#282, #294), suggesting that A(m) (analogue to N  ) is an evolution of this narrative.

Synthesis and Summary

In answer to Q2, secondary discourses seem to have at least two functions in the students' progression to more abstract discourses (branches of the realization tree in Fig. 1), where abstract means that students more and more endorse narratives about narratives instead of narratives about experiences. First, they are the source for the students to develop new discourses with a new set of narratives and visual mediators in this case about A(m) [N  ]but similar keywords, after the teacher establishes the discursive rules that "tends to" is not to be used (episode 1). Second, secondary discourses unlock objectified narratives. They allow to transform the narratives about experiences with "tends to" or with "being in the strip" into narratives about abstract objects of A(m) [n  ] (episode 2) and about d [|a n -a|] and "d ≤ m" (Fig. 1). This is an example of saming, where "proportionality" (#238) is imported into narratives about experiences with the epsilon strips (Sfard, 2008, p. 170). This step is critical in progressing from an experiential process-notion of relations, which is suggested by the activities of using the epsilon strips, towards understanding these relations as abstract objects. Nevertheless, the teacher is needed to provide the phrases and scaffolds by which the students can engage in new discourses with new narratives, e.g. about logical relations. This is expected, as the students neither have previous knowledge about the typical phrases and narratives from the tertiary level, nor about the practice of defining.

DISCUSSION

The here presented study contributes to the ongoing investigation of teaching interventions that help students to understand the abstract definition of limits. It especially highlights the role of the students' previous experiences with secondary mathematical discourses in practices of defining: Students from an upper secondary classroom connect to secondary narratives about limits and other objects (functions) in order to make sense of their experiences with the epsilon strips, and to formulate a definition. The students' secondary school notions are critical for transposing secondary narratives with metaphors ("tends to") into more abstract narratives about narratives that grasp logical relations. As relatively formal objects, school objects mediate between informal experiences of relationships and a more tertiary, abstract understanding of these relationships as objects, by allowing saming [START_REF] Sfard | Thinking as communicating: Human development, the growth of discourses, and mathematizing[END_REF].

Investigating students' practices in terms of familiar secondary discourses and of distinct steps of realizations has proven highly insightful to understand students' resources in transitioning to tertiary mathematical discourses. The results of the present study call for investigating students' transition to tertiary mathematics not only in terms of difficulties, but also in terms of students' (secondary school) resources and how these resources are situationally activated when the discursive rules change.

Figure 1 .

 1 Figure 1. Realizations of the object convergent sequence


Elise Lockwood
email: elise.lockwood@oregonstate.edu

Zackery Reed

Leveraging Specific Contexts and Outcomes to Generalize in Combinatorial Settings

Keywords: Combinatorics, Generalization, Examples, Discrete Mathematics

Generalization is a fundamental aspect of mathematics, and it is a practice with which undergraduate students should engage and gain fluency. It is important for students in combinatorial settings to be able to generalize, but combinatorics lends itself to engagement with specific examples, concrete outcomes, and particular contexts. In this paper, we seek to inform the nature of generalization in combinatorial settings by demonstrating ways in which students leverage specific, concrete settings to engage in generalizing activity in combinatorics. We provide two data examples that highlight ways in which concrete and specific ideas can be leveraged to help students develop generalizations in combinatorial settings.

INTRODUCTION AND MOTIVATION

Generalization is a foundational mathematical activity, a mathematical practice that both researchers and policy-makers value [START_REF] Amit | Rising to the challenge": Using generalization in pattern problems to unearth the algebraic skills of talented pre-algebra students[END_REF][START_REF] Ellis | A taxonomy for categorizing generalizations: Generalizing actions and reflection generalizations[END_REF]. At the undergraduate level, given the nature of abstract, advanced mathematics, it is important to learn how to facilitate generalizing activity for students. We have recently conducted a study designed to investigate undergraduate students' generalizing activity, and we explored the students' generalizing activity in the context of combinatorial problems. In this study, we aimed to examine ways in which to foster students' engagement in generalizing activity. In combinatorics, however, it is often important and even necessary to focus on specific contexts or to consider particular, concrete outcomes. Indeed, in our prior work (e.g., [START_REF] Lockwood | A model of students' combinatorial thinking[END_REF][START_REF] Lockwood | A set-oriented perspective on solving counting problems[END_REF] and in this current study, we have found that concrete, specific instantiations of problems, outcomes, and examples are particularly important for students' combinatorial thinking and activity. We believe that in the domain of combinatorics in particular, such specific instantiations are especially important for developing combinatorial thinking. Given that we want our mathematics students to be able to reason generally in combinatorial settings, we examine the interplay between the natural need for specific contexts and outcomes in combinatorics and the desire to have students engage in meaningful generalization. In this paper, we seek to answer the following research question: In what ways can specific examples, concrete outcomes, and particular contexts be leveraged to foster generalizing activity in a combinatorial setting?

LITERATURE REVIEW AND THEORETICAL PERSPECTIVE

A Piagetian perspective on generalization and generalizing activity. As a broad theoretical perspective, we adhere to a constructivist view of learning, asserting that students construct their knowledge of a given situation based on their mathematical experiences. We fundamentally view generalization as being related to Piaget's notions of reflective abstraction, and we emphasize the importance of having students engage with and reflect upon their prior activity as they engage in generalization. Many researchers have studied generalization in a variety of contexts involving both school-aged children [START_REF] Amit | Rising to the challenge": Using generalization in pattern problems to unearth the algebraic skills of talented pre-algebra students[END_REF][START_REF] Ellis | A taxonomy for categorizing generalizations: Generalizing actions and reflection generalizations[END_REF][START_REF] Rivera | Visual templates in pattern generalization activity[END_REF] and undergraduate students in a variety of areas (e.g., [START_REF] Dubinsky | Constructive aspects of reflective abstraction in advanced mathematics[END_REF][START_REF] Harel | The general, the abstract, and the generic[END_REF]. This report contributes to the growing body of literature by examining the nature of generalization in an undergraduate combinatorial setting.

We follow [START_REF] Ellis | Generalizing-promoting actions: How classroom collaborations can support students' mathematical generalizations[END_REF] and take generalization to mean engaging in "at least one of three actions: (a) identifying commonality across cases, (b) extending one's reasoning beyond the range in which it originated, or (c) deriving broader results from particular cases" (p. 311). To describe students' activity as they generalize, we adopt Ellis' (2007) taxonomy of generalizing activity, Ellis describes three main categories of generalizing actions: relating, searching and extending. In this paper, we focus especially on relating, which occurs when "a student creates a relation or makes a connection between two (or more) situations, problems, ideas, or objects" (p.235). In this paper, the term "generalization" need not involve a formal, final statement of a general rule or property, but rather it may refer to the results of a students' generalizing activity, even if that activity is incomplete or not normatively correct.

Combinatorial thinking and activity.

Combinatorial enumeration problems, or "counting problems," are easy to state, but they can be surprisingly challenging for students to solve. This is due in large part to the fact that counting problems are not reliably solved using prescribed, fool proof algorithms (e.g., [START_REF] Kapur | Combinatorial analysis and school mathematics[END_REF]. Solving counting problems thus provides opportunities for students at all levels to engage in rich mathematical thinking. There is ample evidence that students struggle with solving counting problems (e.g., [START_REF] Batanero | Effect of the implicit combinatorial model on combinatorial reasoning in secondary school pupils[END_REF]. Although researchers have taken strides in identifying productive strategies and ways of thinking that might help address such difficulties, there remains much to learn about how we might effectively help students to count successfully.

In this paper, we examine the role of generalizing in students' counting, and we explore how to frame generalizing activity in terms of [START_REF] Lockwood | A model of students' combinatorial thinking[END_REF] model of students' combinatorial thinking. [START_REF] Lockwood | A model of students' combinatorial thinking[END_REF] suggested that there are three key components to students' combinatorial thinking (Figure 1) and that solidifying the relationships between these components is an important aspect of successful counting. Formulas/expressions refer to numbers and/or variables that represent the answer to a counting problem. Counting processes refer to the enumeration process in which a counter engages as they solve a problem. Sets of outcomes are the collection of (encoded) objects that are being counted.

Figure 1: Lockwood's (2013) model of students' combinatorial thinking

To exemplify the model, we discuss the Horse Race Problem, which is a problem that we discuss in the Results Section. The problem states: There are 10 horses in a race. In how many different ways can the horses finish in first, second, and third place? Note that one counting process to solve this problem is to consider options for which horse could be first, second, or third place. We can argue that there are 10 options for which horse is first, and for any choice of which horse is first there are 9 options for which horse is second, and then for any of those there are 8 choices for which horse is third. This counting process yields an expression of 10*9*8, which is 720. This process would organize the set of outcomes lexicographically, grouped according to which horse finished first, then second, then third.

Lockwood has emphasized the importance of sets of outcomes in a number of studies. In particular, she has advocated for a set-oriented perspective toward counting [START_REF] Lockwood | A set-oriented perspective on solving counting problems[END_REF], in which the act of counting is viewed as inherently involving structuring and enumerating the set of outcomes. In addition, she has made a case for the value of listing outcomes, demonstrating that listing outcomes was positively correlated with solving problems correctly for novice undergraduate students [START_REF] Lockwood | Combinatorial tasks and outcome listing: Examining productive listing among undergraduate students[END_REF]. In this way, Lockwood has emphasized the importance of considering concrete outcomes as students solve counting problems. The point of the set-oriented perspective is that students should think carefully about what they should be solving in a given problem.

On one hand, then, this prior research suggests that it is useful for students to consider the concrete, specific outcomes that they should count. Further, when a student solves a counting problem such outcomes are necessarily tied to that problem and context. We want students to be able to think about what constitutes an outcome in a particular combinatorial situation. On the other hand, though, we want to foster generalization for students and to encourage them to engaging in generalizing activity, even in combinatorial situations. We want students to be able to develop and apply general formulas, or to be able to make general arguments about their counting processes. In this paper, we describe specific ways in which students use concrete settings to leverage general thinking and activity in the domain of combinatorics.

METHODS

We report on data from a study designed to study students' generalizing activity in the context of combinatorics. We report on two data sources. First, we report on a design experiment [START_REF] Cobb | Design experiments in educational research[END_REF] with four undergraduate calculus students, and we focus on one particular student Carson (student names in this paper are pseudonyms). The students were chosen based on a selection interview; they had not taken a discrete mathematics course in the university and were novice counters who could explain their thinking. The students were interviewed together as a group of four during nine 90-minute sessions. The interviews were audio and video recorded. During this time, the students worked both individually and together on combinatorial activities, and the interviewer often asked probing questions or asked the students to explain their work. These tasks included solving basic counting problems, coming up with general formulas for counting problems, and solving problems related to combinatorial proof.

Second, we report on an individual interview with a calculus student, Tyler, who had similarly not taken a discrete mathematics course in the university. The interview was individual and 60 minutes long. We gave Tyler tasks involving determining the number of 3, 4, 5, and eventually n-length passwords using As and Bs, and then passwords consisting of the characters As, Bs, and the number 1. We had him write tables in which he recorded the number of passwords with a certain number of As, and ultimately the tasks could yield the binomial theorem (which we do not discuss in this paper). These tasks were broadly designed to target students' generalizing activity in combinatorial tasks specifically, and we sought both to learn about students' combinatorial reasoning and about their combinatorial generalization.

The design experiment sessions and the interviews were transcribed, and we created enhanced transcripts in which we inserted relevant images and descriptions of activity into the transcripts. For the purposes of this paper, we identified two cases of Carson and Tyler as students who leveraged particular problems and situations in order to engage in generalizing activity. We focused on these students' data and identified relevant episodes that shed light on this phenomenon. We reviewed the transcripts and the videos and discussed these cases with the research team.

RESULTS AND DATA EXAMPLES

In our results, we seek to demonstrate instances in which students leveraged and use specific, concrete examples in combinatorics in order to engage in generalizing activity. These are meant to shed light on the interplay between particular situations and contexts that are important in combinatorial settings and the broader practice of generalization. We argue that specific examples, concrete outcomes, and particular contexts remain a fundamental aspect of combinatorial reasoning that can help to facilitate generalization. We offer two specific examples of how this phenomenon occurs, shedding light on the nature of generalization in combinatorial settings.

Students leverage activity on particular problems to generalize counting formulas and principles.

In this case, a student in the design experiment, Carson, repeatedly referred back to his prior work on a particular problem that stood out to him as being important. We view this as an example in which work on a particular problem can be leveraged to help students engage in generalizing activity. During initial problem solving in the first session, Carson had solved the Horse Race Problem, described previously. We will demonstrate that as he proceeded to solve other tasks and solve other problems, he repeatedly referred back to his prior activity on this problem, related it to other situations, and used it to generalize a counting formula. Carson solved the problem in a different way than we had described above, arriving at a correct expression of 10!/7!. Note, this is equivalent to the expression 10*9*8, but, as he explained below, Carson used a different counting process. He had a particular way of reasoning about this solution, leveraging the notion of division and equivalence to explain why the division by 7! makes sense combinatorially.

Carson:

…So, there's 10 factorial total outcomes, and then we know for any given first 3 there's gonna be 7 factorial, because that's saying we know the first 3 horses have finished -how can the last 7 horses finish, so that's gonna be 7 factorial. But all we care about is how many given first 3s there are. So, if we divide the total number of outcomes by the number of potential of outcomes for the last 7 horses that will give us the potential number of outcomes for the first 3. If that makes sense?

Carson argued that for any particular arrangement of all ten horses, since all that matters is how the first three horses finish, we can divide by the number of identical arrangements of the last seven horses. This is a valuable way to think about these problems, and understanding and articulating this counting process seemed to be an important moment for Carson. As we proceeded to consider more problems, Carson repeatedly returned to this Horse Race Problem. We will demonstrate ways in which Carson has engaged in the generalizing activity of relating [START_REF] Ellis | A taxonomy for categorizing generalizations: Generalizing actions and reflection generalizations[END_REF] by using this problem as he approached additional tasks. In this way, this problem served as a generic example [START_REF] Mason | Generic examples: seeing the general in the particular[END_REF], a way in which he could make general arguments and connect his reasoning to other problems. We now describe several of the ways that Carson leveraged this particular problem.

First, we see that Carson engaged in relating by connecting back to the Horse Race Problem as he solved other problems. For example, in solving a problem of arranging 4 of 7 books in a row on a shelf, Carson arrived at the correct answer of 7!/3!. The interviewer asked him how he was thinking about the problem, and his response below shows the connection he made to the Horse Race Problem.

Carson: Yes, kind of similar to the horse problem. You can say they're all in a race, you wanna see how many ways the first 4 books could finish in the race.

We later had the four students categorize problems they had solved, and from that exercise we asked them to generalize formulas. One of these formulas was the number of ways of arranging some number of objects from a larger set of objects.

Carson had indicated that he saw several problems as being the same, and in the excerpt below, he explained why he viewed the problems as being the same. Again, he referred to the podium and the division that he had articulated on the Horse Race Problem as being a distinguishing feature of all of these problems.

Carson: So, essentially all of them are asking for a ranking of a given set of objects and asking how many arrangements there are for a given number of places, right? So, the cats are racing to get the collars you could say or the restaurants are racing to get the top five rankings in the town or the horses are racing in a race. Then each of the rankings or the collars are a ranking in the race. Yeah, then you can just divide by the duplicates for leftover ones, the ones that didn't make the podium finish or whatever amount of finishes there are or whatever podium they're asking for.

His reference to the horses and to the podium suggest to us that this continued to be a salient aspect of his reasoning. We interpret that Carson was engaging in the generalizing activity of relating [START_REF] Ellis | A taxonomy for categorizing generalizations: Generalizing actions and reflection generalizations[END_REF], and, in terms of [START_REF] Lockwood | A model of students' combinatorial thinking[END_REF] model, he related the counting process of arranging all of the objects and then dividing by the ways to arrange the leftover objects. He also seemed to emphasize the nature of the set of outcomes (arrangements). He recognized that counting process as similar among the problems he grouped together, and he related each of those other problems to the ranking and podium language he used in the Horse Race Problem.

Further, we also asked the students to come up with a general formula for the problems they had grouped together. They did this for several problems, but we highlight the formula for the permutation problems. In trying to articulate the kind of problem they were dealing with, again Carson referred to his activity on the Horse Race Problem.

Carson: Right. I mean thinking about the method for solving this, it's the factorial from above, right? So, we have ten horses in a race. How many ways can the horses finish, but then how many of those have a unique podium, right? So, how many times are the first, second, and third place different?

The students then had a conversation about what the formula would be. They came up with the formula a!/(a-b)! for arranging b objects from a set of a distinct objects, which another student, Josh, articulated:

Josh: No, I think that it would be something like if you have a objects, you would have a factorial -that's the total number of things that you can selectover a minus b factorial, where b is the number of slots that you have.

After they agreed upon this formula, Carson explained how he was thinking about this general formula they had come up with. The excerpt below shows that he referred back to the imagery of the podium, using that context to make a general argument.

Carson: … A is your total number of arrangements for the entire thing and then you want to divide by the number of ways that the places you're not selecting can be arranged, right? So, if you're selecting first, second, and third, then you have fourth through tenth and those can be arranged in ten minus three factorial ways, right? So, we can just divide by that number of arrangements [begins motioning slots with hands] for the back end to get just one for the front end because that's what we're asking for is how many ways can that podium be arranged?

We contend that in relating back to the Horse Race Problem, Carson was relating back to different components of [START_REF] Lockwood | A model of students' combinatorial thinking[END_REF] model, including formulas, sets of outcomes, and counting process. This exchange suggests that Carson had a welldeveloped understanding of the specific problem in terms of the components of the model, and he related different aspects of the problem in different situations. From our Piagetian perspective we view Carson and the students as constructing a formula that makes sense to them, and Carson reflected upon his prior activity in order to develop a statement of a more general formula.

The Horse Race Problem came up in additional settings for Carson, including during reasoning about combinatorial proof in a later session. Ultimately, Carson acknowledged how important this problem was for him. In the final interview, when we were reflecting on the entire design experiment, Carson shared that he continued to think about subsequent problems in terms of the Horse Race Problem. We interpret that his language below means that he felt that he conceptually understood the ideas in the Horse Race Problem, perhaps in a deep way that he felt confident about.

Carson: For whatever reason, the horse race problem is the one that's in my head forever. And it must have just been where it clicked in the interview because that's kind of what I refer to. If somebody says how many ways can a horse finish in the podium, how many ways can the podium be organized, things like that. And that's kind of where I keep going back to. And I don't know why that is.

This case serves as an example of a student leveraging activity on a particular problem for a number of other activities, particularly generalizing activities of relating [START_REF] Ellis | A taxonomy for categorizing generalizations: Generalizing actions and reflection generalizations[END_REF] We briefly describe an additional example in which a calculus student Tyler was relating two different situations while working on the Passwords Activity. In the interview Tyler was counting two kinds of passwordsthose involving either upper case As and/or Bs, and those involving As, Bs, and the number 1 (with repetition allowed). Tyler had initially engaged in systematic listing activity to count the number of possible 4-character AB passwords. In particular, he created the list of 4character AB passwords with exactly two As (Figure 2a), and the table of passwords according to number of As (Figure 2b). Later in the interview, Tyler was in a situation of counting 4-character passwords consisting of uppercase As, Bs, and 1s. We had asked him to create a table based on the number of 1s in the password. To complete this table, one can first consider placing the 1(s) and then filling the remaining positions with either A or B. Notably, placing As and Bs then reduced to the prior problem Tyler had solved, namely counting 4-character AB passwords. Tyler realized that there were the same number of arrangements of two types of characters, and he made a general statement about this case, recognizing that he will always have six ways of arranging two kinds of characters. Tyler was able to speak generally about counting arrangements of two kinds of characters. That is, he recognized that the tables gave him totals for the number of ways of arranging two characters, not just that they had to be As and Bs or 1s and xs. In the excerpt below he had been working on an extension problem, and he speaks about two different "things" that are changing, suggesting he had extrapolated a notion of arranging two characters independently of what the characters are specifically.

Tyler: Um well these are all the number of combinations I can do, um, with 2 different, 2 things that are changing, and this number of letters.

Here, we conjecture that reasoning about the particular situations and engaging with the actual outcomes allowed Tyler to make an important connection between arranging As and Bs and 1s and xs. The similar nature of the activity when listing in both cases allowed him to draw attention to the similar counting process in which he was engaging and the fact that the outcomes he was generating were fundamentally similararrangements of two kinds of characters. Ultimately this allowed him to make and use a useful generalization, and he understood the values in the rows in the AB tables as representing the number of arrangements of two kinds of characters.

We infer that Tyler engaged in relating [START_REF] Ellis | A taxonomy for categorizing generalizations: Generalizing actions and reflection generalizations[END_REF], and that comparing both situations allowed him to draw out some general commonalities between the two specific settings. Here, we argue that reasoning carefully about the concrete examples and actually engaging in concrete listing activity may have helped to solidify a broader combinatorial process.

CONCLUSION AND DISCUSSION

Prior research (e.g., [START_REF] Lockwood | A model of students' combinatorial thinking[END_REF][START_REF] Lockwood | A set-oriented perspective on solving counting problems[END_REF][START_REF] Lockwood | Combinatorial tasks and outcome listing: Examining productive listing among undergraduate students[END_REF] has emphasized the importance of having students focus on sets of outcomes as they solve counting problems. Often this focus on outcomes necessarily means that students reason about very specific contexts and concrete objects, and we view this as a fundamental aspect of counting and combinatorial activity. However, we also acknowledge that part of mathematical engagement involves looking beyond particular situations and contexts, and we have tried to demonstrate certain ways in which the particular contexts and concrete outcomes can be leveraged to facilitate meaningful generalizing activity for students.

Specifically, we offer two qualitatively different examples in which students leveraged the structure of specific combinatorial contexts to establish more general relationships. In our first example, Carson used his activity on and solution of the Horse Race Problem as a template for a specific combinatorial process, which he then used in similar contexts. Carson's generalizing activity was manifest through using this template as a means to relate combinatorial processes that he viewed as similar in some way and to connect the structure of the Horse Race problem to other cases. This specific generalizing activity demonstrates a powerful manifestation of relating, wherein Carson leveraged the structure of a known specific example as a solution for novel and abstract counting processes.

In our second example, Tyler used a connection between two situations to generalize a concrete arrangement structure. Tyler had initially recognized that his tables partitioning the 3-length passwords according to the number of As represented instead a partition of ways to arrange pairs of objects. Tyler then leveraged the specific process with which he was familiar by arranging 1s and xs, thus implementing the same specific counting process in a particular generalized setting.

Both of these examples involve the activity of using concrete situations to form a general relationship. These cases help to inform the nature of generalization in combinatorial contexts, offering examples of specific ways in which concrete outcomes and situations can be leveraged for use in more general settings.

Figure

  Figure 2a, b: Tyler's arrangements of 4-character AB passwords with exactly 2 As and his complete 4-character AB table

compare and contrast specific examples to identify general structure.

  . There have other examples of students drawing on prototypical problem types in combinatorics. Maher and colleagues have talked about students referring to Pizza Problems or Block Towers problem, demonstrating how students think about and use powerful particular problems in other (e.g., Maher, Powell, & Uptegrove, 2011). We build on such work by explicitly drawing attention to the generalizing activity that a specific problem fostered for students, highlighting the affordances that can stem from a student deeply understanding and justifying his or her activity on a particular counting problem.

	Students